/* Respiro / Giuseppe Inglese — CSS circoscritto, senza cornici doppie */
.respiro-page{--rs-ink:#19272a;--rs-paper:#f5f2ec;--rs-muted:#707975;--rs-dark:#122126;--rs-accent:#958e80;color:var(--rs-ink);background:var(--rs-paper);}
.respiro-page *{box-sizing:border-box;}
.respiro-page img{display:block;width:100%;max-width:100%;}
.respiro-page a{color:inherit;text-decoration:none;}
.respiro-page h1,.respiro-page h2,.respiro-page h3,.respiro-page p,.respiro-page figure{margin:0;}
.respiro-page h1,.respiro-page h2,.respiro-page h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.048em;}
.respiro-page .respiro-kicker,.respiro-page .respiro-section-marker,.respiro-page .respiro-index,.respiro-page .work-year{font:500 11px/1.5 system-ui,-apple-system,sans-serif;letter-spacing:.18em;text-transform:uppercase;}
.respiro-page .respiro-kicker{color:#827c74;}
.respiro-page .respiro-dot{color:#a5a092;}
.respiro-hero{display:grid;grid-template-columns:minmax(0,45%) minmax(0,55%);min-height:clamp(520px,49vw,850px);}
.respiro-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(38px,6vw,115px) clamp(24px,5vw,95px);background:#f3f0e9;min-width:0;}
.respiro-crumb{margin:16px 0 clamp(45px,7vw,102px);display:flex;gap:12px;color:#777b78;font:400 12px/1.6 system-ui,sans-serif;}
.respiro-crumb a{text-decoration:underline;text-underline-offset:4px;}
.respiro-hero h1{font-size:clamp(66px,8.6vw,150px);line-height:.95;}
.respiro-lead{font-family:Georgia,serif;font-size:clamp(19px,1.7vw,29px);line-height:1.47;color:#5e6665;max-width:25ch;margin:clamp(20px,3vw,43px) 0 clamp(26px,4vw,55px)!important;}
.respiro-arrowlink{display:inline-flex;align-items:center;gap:32px;border-bottom:1px solid currentColor;padding:10px 0;font:600 12px/1.5 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;}
.respiro-arrowlink span{font-size:20px;font-weight:400;}
.respiro-hero-visual{position:relative;min-width:0;background:#020207;overflow:hidden;}
.respiro-hero-visual img{width:100%;height:100%;min-height:520px;object-fit:contain;object-position:center;}
.respiro-hero-visual figcaption{position:absolute;bottom:24px;left:26px;color:#e1e5e4;font:500 10px/1.5 system-ui,sans-serif;letter-spacing:.14em;}
.respiro-concept{display:grid;grid-template-columns:minmax(0,35%) minmax(0,65%);gap:20px;padding:clamp(75px,9vw,158px) clamp(24px,4vw,70px);border-bottom:1px solid rgba(30,45,45,.2);}
.respiro-section-marker{padding-top:10px;color:#787c78;}
.respiro-concept-body{max-width:830px;}
.respiro-concept h2{font-size:clamp(42px,5.2vw,87px);line-height:1.11;margin:17px 0 clamp(35px,5vw,76px);}
.respiro-concept h2 em{color:#8e8a81;font-weight:400;}
.respiro-concept p:not(.respiro-kicker){font-size:clamp(16px,1.15vw,19px);line-height:1.85;color:#4d5b59;margin-bottom:20px;max-width:68ch;}
.respiro-catalog{padding:clamp(68px,8vw,136px) clamp(24px,4vw,70px) clamp(80px,9vw,150px);background:#f6f3ee;}
.respiro-catalog-head{display:grid;grid-template-columns:1fr;gap:0;align-items:end;border-bottom:1px solid rgba(34,46,49,.22);padding-bottom:clamp(30px,4vw,62px);margin-bottom:clamp(40px,5vw,80px);}
.respiro-catalog-head h2{font-size:clamp(58px,7vw,120px);line-height:1.04;margin-top:20px;}
.respiro-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(64px,7vw,130px) clamp(25px,3vw,62px);}
.respiro-work{min-width:0;}
.respiro-work-photo{position:relative;background:#020307;aspect-ratio:1.42 / 1;overflow:hidden;}
.respiro-work-photo .work-main-image{width:100%;height:100%;object-fit:contain;object-position:center;}
.respiro-work-photo:hover .work-photo-controls,.respiro-work-photo:focus-within .work-photo-controls{opacity:1;}
.respiro-work-photo .work-photo-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:18px;background:linear-gradient(transparent,rgba(0,0,0,.76));transition:opacity .2s ease;}
.respiro-work-photo button{appearance:none;border:0;background:rgba(9,20,23,.68);color:#fff;cursor:pointer;min-height:38px;padding:8px 11px;font:500 10px/1.3 system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase;}
.respiro-work-photo button span{margin-left:9px;}
.respiro-work-photo button:focus-visible{outline:2px solid white;outline-offset:2px;}
.respiro-work-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:26px;}
.respiro-index,.work-year{color:#8a887f!important;}
.respiro-work-heading h3{font-size:clamp(31px,3.1vw,57px);line-height:1.08;margin-top:7px;}
.respiro-work-material,.respiro-work-size{font:400 14px/1.65 system-ui,-apple-system,sans-serif;color:#63716e;margin-top:14px!important;}
.respiro-work-size{margin-top:2px!important;}

.respiro-work-video{height:auto;aspect-ratio:1.42/1;background:linear-gradient(135deg,#1f3034,#10191e 65%,#080e11);position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(25px,4vw,70px);color:#edf1ed;}
.respiro-work-video .video-label{position:absolute;top:24px;left:clamp(25px,4vw,70px);font:500 10px/1.4 system-ui,sans-serif;letter-spacing:.2em;color:#b2bdb9;}
.respiro-work-video .video-large-mark{position:absolute;top:20px;right:32px;font-size:42px;color:#a6b5b0;}
.respiro-work-video p{font:400 clamp(46px,6vw,82px)/1 Georgia,serif;letter-spacing:-.045em;margin-bottom:30px;}
.respiro-work-video a{font:500 12px/1.4 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #c4cdca;padding-bottom:10px;}
.respiro-outro{background:#122126;color:#f4f0e7;padding:clamp(62px,8vw,130px) clamp(24px,4vw,70px);display:flex;align-items:flex-end;justify-content:space-between;gap:50px;}
.respiro-outro .respiro-kicker{color:#a9b3af;}
.respiro-outro h2{font-size:clamp(44px,5vw,83px);line-height:1.15;margin:18px 0 23px;}
.respiro-outro h2 em{font-weight:400;}
.respiro-outro p:not(.respiro-kicker){font:400 clamp(15px,1vw,18px)/1.75 system-ui,sans-serif;color:#b9c4c0;max-width:60ch;}
.respiro-outro .respiro-arrowlink{flex:0 0 auto;}
.respiro-skip{position:absolute;top:-80px;left:20px;padding:12px;background:#fff;color:#111;z-index:10000;}.respiro-skip:focus{top:10px;}
.respiro-lightbox[hidden]{display:none!important;}
.respiro-lightbox{position:fixed;inset:0;z-index:12000;background:rgba(0,0,0,.97);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:62px 25px 30px;}
.respiro-lightbox img{height:calc(100vh - 160px);max-height:100%;max-width:100%;width:auto;object-fit:contain;}
.respiro-lightbox p{color:#d0dbd5;font:400 12px/1.4 system-ui,sans-serif;margin:10px 0 0;}
.respiro-lightbox-close{position:absolute;right:clamp(15px,4vw,48px);top:18px;appearance:none;background:transparent;border:1px solid #bbb;padding:10px 14px;color:#fff;cursor:pointer;font:500 12px system-ui,sans-serif;}
@media(max-width:850px){.respiro-hero{grid-template-columns:1fr;}.respiro-hero-copy{min-height:370px;padding:50px 30px;}.respiro-crumb{margin-bottom:35px;}.respiro-hero-visual{min-height:350px;}.respiro-hero-visual img{min-height:350px;max-height:550px;}.respiro-concept{grid-template-columns:1fr;gap:40px;}.respiro-catalog-head{grid-template-columns:1fr;gap:12px;}.respiro-work-grid{column-gap:22px;}.respiro-outro{display:block;}.respiro-outro .respiro-arrowlink{margin-top:35px;}}
@media(max-width:600px){.respiro-work-grid{grid-template-columns:1fr;gap:70px;}.respiro-hero h1{font-size:clamp(60px,18vw,100px);}.respiro-work-photo{aspect-ratio:1.55;}.respiro-work-photo .work-photo-controls{padding:9px;}.respiro-work-video{aspect-ratio:1.55;}.respiro-catalog{padding-top:70px;}.respiro-concept{padding-top:70px;padding-bottom:70px;}.respiro-hero-visual img{max-height:410px;}}
@media(prefers-reduced-motion:reduce){.respiro-work-photo .work-photo-controls{transition:none;}}

/* I titoli delle serie rimangono sempre su una sola riga.
   Il JavaScript condiviso ne calibra la dimensione in base allo spazio disponibile. */
.respiro-page .respiro-hero h1 {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-wrap: nowrap;
    max-width: 100%;
}
.respiro-work-photo img { display:block; }
.respiro-work-note {max-width:60ch;margin-top:13px!important;font:400 13px/1.6 system-ui,sans-serif;color:#646f6b;}
.respiro-work .respiro-work-material {margin-top:15px!important;}
.respiro-work .respiro-work-size {color:#6e7773;}
.respiro-page .respiro-work-video p {color:#fff;}
@media(max-width:600px){.respiro-page .respiro-hero h1 {font-size:clamp(48px,11.5vw,85px);} .respiro-work-heading h3{font-size:clamp(29px,8vw,48px);} }
