/* Editorial photography, November 2026. Locally hosted responsive images. */
:root{--accent:#2454cc;--ink:#171c24;--paper:#f7f5f1;--muted:#5f6570}
body{color:var(--ink)}
header{border-bottom:1px solid #deded8;background:var(--paper)}
.topline{background:#172330;color:#fff}.topline a{color:inherit}
.header-main{min-height:92px!important}.header-search .search{box-shadow:none}
.nav{border-top:1px solid #dcdedc}.nav>a{font-weight:600}
.visual-hero{position:relative;isolation:isolate;overflow:hidden;background:#1c2c32!important;color:white;padding:72px 0 38px!important}
.visual-hero .hero-scene{position:absolute;inset:0;z-index:-2;margin:0;pointer-events:none}
.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.visual-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,24,30,.88) 0%,rgba(12,24,30,.76) 37%,rgba(12,24,30,.18) 100%);z-index:-1;pointer-events:none}
.visual-hero>.wrap{position:relative}.visual-hero h1{font-size:clamp(40px,4.7vw,72px);max-width:850px;line-height:1.07;letter-spacing:-.045em;color:white;text-wrap:balance;margin-top:16px}
.visual-hero h1>span{font-size:.45em;line-height:1.35;letter-spacing:-.02em;font-weight:450;max-width:660px;margin-top:22px;color:#f3f5f5}
.visual-hero .hero-heading{grid-template-columns:1fr;min-height:260px}.visual-hero .brand-hero{display:none}
.visual-hero .eyebrow{color:#d4e2e9;letter-spacing:.13em}.visual-hero .lead,.visual-hero .intro{color:#f2f4f4;max-width:780px}
.visual-hero .intro{grid-template-columns:1fr}.visual-hero .intro p{margin:8px 0}
.visual-hero .search{color:var(--ink);border:0;border-radius:12px;box-shadow:0 14px 45px #0003;padding:10px;margin-top:32px}
.search .button{background:var(--accent);color:white;border:1px solid var(--accent);border-radius:7px}
.visual-hero .chips a{color:white;background:#ffffff14;border:1px solid #ffffff55;border-radius:100px;backdrop-filter:blur(8px)}
.visual-hero .chips a:hover{background:#ffffff28}.visual-hero .demo-note{color:#e7e9ec;max-width:850px;line-height:1.7}
.visual-hero .photo-label{font-size:10px;color:#d6e1e7;letter-spacing:.04em;margin-top:18px}
.section{padding-block:72px}h2{text-wrap:balance;letter-spacing:-.035em}.section-title{margin-bottom:28px}
.category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.category-tile{position:relative;padding:0 0 24px;min-height:0;background:white;border:1px solid #e3e5e3;border-radius:14px;overflow:hidden;box-shadow:0 3px 12px #101c2406;transition:transform .2s ease,box-shadow .2s ease}
.category-tile:hover{transform:translateY(-4px);border-color:#bdc9d6;box-shadow:0 16px 38px #101c2412}
.category-tile .tile-photo{display:block;margin:0 0 20px;overflow:hidden;background:#e3e8e6}
.tile-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .35s ease}
.category-tile:hover img{transform:scale(1.035)}
.category-tile>h3,.category-tile>h2,.category-tile>p,.category-tile>.category-number{margin-left:22px;margin-right:22px}
.category-tile h3,.category-tile h2{font-size:18px;line-height:1.35}.category-tile p{font-size:13px;line-height:1.65;color:var(--muted)}
.category-tile .category-icon{position:absolute;top:12px;right:12px;display:grid;place-items:center;background:#ffffffed;border-radius:50%;width:36px;height:36px;margin:0;color:#172330;box-shadow:0 2px 10px #0001}
.category-tile .category-icon svg{display:none}.category-tile .category-icon>span{font-size:21px;line-height:1}
.category-number{font-size:11px;letter-spacing:.08em;color:#677585}.off{background:#f1f3f2}
.button{border-radius:7px}.badge{background:#eaf0ff;color:#234799}.notice{border-color:var(--accent)}blockquote{border-color:var(--accent)}.buy-art{border-radius:16px;transform:none}.buy-art strong{background:#dce6ff}
.tips>a{border-radius:12px}.offer{border-radius:12px}.photo-banner{margin:0 0 32px;overflow:hidden;border-radius:14px}.photo-banner img{display:block;width:100%;height:auto;max-height:380px;object-fit:cover}
.partner-strip{margin-block:32px 0;padding:30px;border-radius:12px;background:#eaf0ff;display:flex;justify-content:space-between;gap:25px;align-items:center;color:#172330}.partner-strip h2{font-size:23px;margin:0 0 8px}.partner-strip p{font-size:14px;max-width:760px;margin:0}.partner-strip a{flex-shrink:0;background:var(--accent);color:#fff;padding:13px 18px;border-radius:7px;text-decoration:none;font-weight:650;font-size:13px}
.photo-credits{font-size:11px;padding-top:15px}.photo-credits a{color:inherit}.image-credit-list li{margin-bottom:20px;overflow-wrap:anywhere}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #5589ff;outline-offset:4px}
@media(min-width:1101px){.category-grid>.category-tile:nth-child(1),.category-grid>.category-tile:nth-child(2){grid-column:span 2}.category-grid>.category-tile:nth-child(-n+2) .tile-photo img{aspect-ratio:2.4}.category-grid>.category-tile:nth-child(-n+2) h3{font-size:24px}.category-grid>.category-tile:nth-child(-n+2) p{font-size:15px}}
@media(max-width:1100px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-hero{padding-top:52px!important}.visual-hero h1{font-size:52px}.visual-hero .hero-heading{min-height:230px}}
@media(max-width:700px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-tile>h3,.category-tile>h2,.category-tile>p,.category-tile>.category-number{margin-left:14px;margin-right:14px}.category-tile h3,.category-tile h2{font-size:16px}.category-tile p{font-size:12px}.visual-hero{padding:40px 0 28px!important}.visual-hero:after{background:linear-gradient(90deg,#0c181ee8,#0c181e88)}.visual-hero h1{font-size:clamp(36px,8vw,49px)}.visual-hero h1>span{font-size:23px;line-height:1.35}.visual-hero .hero-heading{min-height:0}.visual-hero .search{margin-top:28px}.hero-scene img{object-position:65% center}.partner-strip{flex-direction:column;align-items:flex-start;padding:24px}.section{padding-block:48px}.header-main{min-height:76px!important}.category-tile .tile-photo{margin-bottom:14px}.visual-hero .intro{font-size:15px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.category-tile:hover,.category-tile:hover img{transform:none}}
/* Specialist Italian rental portal. */
.hero-art{display:block;transform:none;padding:0;overflow:hidden;border-radius:20px;min-height:440px;background:#e2e9ea;box-shadow:0 18px 45px #1a28451c}.nm-hero-image{margin:0;height:100%}.nm-hero-image img{display:block;width:100%;height:100%;min-height:440px;object-fit:cover}.card .visual{height:auto;min-height:0;padding:0;background:#e8ecec}.card .tile-photo{margin:0}.card .tile-photo img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.card{border-radius:16px;overflow:hidden;box-shadow:0 5px 24px #24365109}.card:hover{box-shadow:0 16px 35px #24365114}.card[hidden]{display:none!important}.hero{gap:50px}.hero h1{font-size:clamp(36px,4.6vw,64px)}
@media(max-width:700px){.hero-art,.nm-hero-image img{min-height:240px}.hero-art{max-height:300px}.hero{gap:30px}.brand{overflow-wrap:anywhere}}
.hero>div{min-width:0}.hero-art{width:100%;min-width:0;min-height:0;height:440px;aspect-ratio:auto}.hero-art:before{display:none}.nm-hero-image{width:100%}.nm-hero-image img{min-height:0}
@media(max-width:700px){.hero-art{height:260px;min-height:0;width:100%;max-width:100%}.nm-hero-image img{min-height:0}}

.nm-hero-image img{object-position:right center}
