/* Refined identity and timed photography */
header .logo{display:flex;align-items:center;gap:16px;text-align:center;letter-spacing:0;white-space:nowrap}
.logo-copy{display:block;text-align:center;line-height:1.15}
.logo-name{font-family:Georgia,serif;font-size:clamp(18px,1.85vw,28px);font-weight:600;letter-spacing:.105em;display:block}
.logo-copy small{font-family:'Noto Sans JP',sans-serif;font-size:10px;letter-spacing:.18em;display:block;margin-top:8px;line-height:1.2}
.logo-dog{width:49px;height:40px;position:relative;display:block;flex:none;transform:translateY(4px)}
.logo-dog svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 1px 1px #0002)}
.dog-walk{transform-origin:center bottom;animation:dog-bob .38s ease-in-out infinite alternate}
.dog-leg-left{transform-origin:16px 29px;animation:dog-step .44s ease-in-out infinite alternate}
.dog-leg-right{transform-origin:35px 29px;animation:dog-step .44s ease-in-out infinite alternate-reverse}
.dog-tail{transform-origin:43px 17px;animation:dog-wag .48s ease-in-out infinite alternate}
.logo-dog{animation:dog-travel 8s ease-in-out infinite alternate}
@keyframes dog-bob{to{transform:translateY(-1.5px)}}@keyframes dog-step{to{transform:rotate(18deg)}}@keyframes dog-wag{to{transform:rotate(-17deg)}}@keyframes dog-travel{0%,100%{transform:translate(0,4px)}50%{transform:translate(7px,4px)}}
.hero-slides{position:absolute;inset:0;overflow:hidden}.hero-slide{position:absolute;inset:0;background-position:center 50%;background-size:cover;opacity:0;transform:scale(1.085);transition:opacity 1.65s ease,transform 8s linear;will-change:opacity,transform}.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero:before{display:none}.hero:after{z-index:0;background:linear-gradient(90deg,#071e32c7 0%,#0a263b88 43%,#0a263b3d 100%),linear-gradient(0deg,#06172575,transparent 55%)}.hero-inner{z-index:2}.hero-progress{z-index:3}
.hero-slide-indicator{position:absolute;bottom:61px;left:calc(10.5% + 220px);z-index:3;font:11px Georgia,serif;color:#fff;letter-spacing:.14em}
.property-window{overflow:hidden;width:100%;padding:8px 0 28px}.property-grid{display:flex!important;gap:18px;transition:transform 1.05s cubic-bezier(.2,.76,.2,1);will-change:transform}.property-grid .property-photo{flex:0 0 calc((100% - 36px)/3);min-width:0;aspect-ratio:1.13;transition:box-shadow .4s}.property-grid .property-photo .index{display:none!important}
.property-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px}.property-controls button{width:42px;height:42px;border:1px solid #d5d8d5;background:transparent;color:var(--navy);cursor:pointer;font-size:20px;transition:background .25s,color .25s}.property-controls button:hover{background:var(--navy);color:#fff}.property-dots{display:flex;gap:9px;margin:0 12px;align-items:center}.property-dots button{width:6px;height:6px;border:0;padding:0;border-radius:50%;background:#bec6c9;transition:width .3s,background .3s}.property-dots button.active{width:25px;border-radius:4px;background:var(--gold)}
.company-building{margin:35px 0 0;width:min(100%,350px);height:330px;overflow:hidden;position:relative;background:#d9dedf}.company-building img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform .9s ease}.company-building:hover img{transform:scale(1.04)}.company-building figcaption{position:absolute;left:14px;bottom:10px;font:11px Georgia,serif;color:#fff;letter-spacing:.17em;text-shadow:0 1px 4px #0008}.company-building:after{content:"";pointer-events:none;position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#071b2b55)}.company-building figcaption{z-index:1}
@media(max-width:800px){header .logo{gap:8px}.logo-name{font-size:18px;letter-spacing:.06em}.logo-copy small{font-size:8px;letter-spacing:.1em;margin-top:5px}.logo-dog{width:36px;height:32px}.hero-slide-indicator{left:auto;right:8%;bottom:40px}.property-grid .property-photo{flex-basis:calc((100% - 10px)/2)}.property-grid{gap:10px}.company-building{max-width:360px;height:290px}}
@media(max-width:480px){.property-grid .property-photo{flex-basis:86%;aspect-ratio:1.1}.logo-name{font-size:17px}}
@media(prefers-reduced-motion:reduce){.logo-dog,.dog-walk,.dog-tail,.dog-leg-left,.dog-leg-right{animation:none!important}.hero-slide{transition:none;transform:none}.property-grid{transition:none}}
