/* Images blend into the identity; appearance follows loading and viewport entry. */
.hero{display:block;position:relative;min-height:358px;border:0;border-radius:16px;overflow:hidden;background:#142b40;isolation:isolate}.hero-copy{position:relative;z-index:2;width:58%;max-width:650px;min-height:358px;padding:34px 36px;justify-content:center;pointer-events:none}.hero-copy>*{pointer-events:auto}.hero-copy .hero-tag{color:#e3c8a5}.hero-copy h2{font-size:30px;line-height:1.95}.hero-copy p{color:#d0d9dd;max-width:380px;line-height:2.2}.hero-art{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;z-index:0;background:#142b40;min-height:0}.hero .hero-photo{position:absolute;inset:0;height:100%;width:100%;min-height:0;background:#142b40}.hero-photo .project-photo{object-position:28% 48%;filter:saturate(.85) brightness(.95)}.hero-photo:after{background:linear-gradient(270deg,#142b40 0%,#142b40f7 18%,#142b40d6 38%,#142b4055 63%,#142b4010 100%),linear-gradient(0deg,#142b4055,transparent 38%)}.hero-photo .photo-tag{bottom:17px;left:18px;right:auto;top:auto;border-color:#ffffff18;background:#142b4099}.hero-photo .photo-expand{top:auto;bottom:17px;right:18px;left:auto;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s;pointer-events:none}.hero-photo:hover .photo-expand,.hero-photo:focus-visible .photo-expand{opacity:1;transform:none}.project-art{border-bottom:0;overflow:hidden;background:#ede9e0}.project-art .photo-trigger{background:#ede9e0}.project-art .photo-trigger:after{background:linear-gradient(180deg,#142b4007 0%,transparent 48%,#fffdf910 63%,#fffdf998 87%,#fffdf9 100%)}.project-art .photo-tag,.project-art .project-code{bottom:16px}.project-body{padding-top:8px}.project-card{border-radius:15px;overflow:hidden}.project-photo{border:0;border-radius:0}.photo-trigger{border:0;border-radius:0}.photo-trigger:focus-visible{outline:3px solid #d9b88f;outline-offset:-5px}.detail-art{border:1px solid #e1e2dc;border-bottom:0;border-radius:15px 15px 0 0;margin-bottom:0;background:#fffdf9;height:305px;overflow:hidden}.detail-art .photo-trigger:after{background:linear-gradient(180deg,transparent 45%,#fffdf91a 65%,#fffdf9b0 86%,#fffdf9 100%)}.detail-art+.panel{border-top:0;border-radius:0 0 15px 15px;padding-top:14px}.detail-art .photo-tag{bottom:18px}.photo-dialog{width:min(860px,calc(100vw - 30px));border:0;border-radius:16px}.photo-gallery figure>img{width:auto;max-width:100%;height:auto;max-height:53vh;margin-inline:auto;object-fit:contain;background:transparent;border:0;border-radius:12px}.gallery-thumb{border-radius:9px}.gallery-thumb img{border-radius:5px}.project-photo.photo-progressive{opacity:0;filter:blur(10px) saturate(.82);transform:scale(1.04);transition:opacity .8s ease,filter 1s ease,transform 1.1s cubic-bezier(.2,.65,.25,1)}.project-photo.photo-progressive.is-ready{opacity:1;filter:saturate(.88);transform:scale(1.01)}.photo-trigger:hover .project-photo.photo-progressive.is-ready,.photo-trigger:focus-visible .project-photo.photo-progressive.is-ready{filter:saturate(1);transform:scale(1.045)}.photo-gallery figure>img.photo-progressive{opacity:0;filter:blur(8px);transition:opacity .6s ease,filter .8s ease}.photo-gallery figure>img.photo-progressive.is-ready{opacity:1;filter:none}.media-reveal{opacity:0;transform:translateY(12px);transition:opacity .75s ease,transform .9s cubic-bezier(.2,.65,.25,1)}.media-reveal.is-visible{opacity:1;transform:none}.hero-art.media-reveal{transform:none;transition:opacity 1s ease}
@media(min-width:1500px){.hero,.hero-copy{min-height:390px}.hero-copy{padding:38px 42px}.hero-copy h2{font-size:35px}.hero-copy p{font-size:12px;max-width:430px}.detail-art{height:350px}}
@media(max-width:1150px){.hero,.hero-copy{min-height:340px}.hero-copy{padding:28px;width:62%;max-width:none}.hero-copy h2{font-size:27px}.hero-copy p{max-width:340px;font-size:11px}.hero-photo .project-photo{object-position:26% 47%}.hero-photo:after{background:linear-gradient(270deg,#142b40 0%,#142b40f7 18%,#142b40d9 41%,#142b4055 72%,#142b4010 100%)}.detail-art{height:275px}}
@media(max-width:850px){.hero,.hero-copy{min-height:360px}.hero-copy{width:64%;padding:30px}.hero-copy h2{font-size:30px}.hero-copy p{max-width:335px}.hero-photo .project-photo{object-position:27% 48%}.detail-art{height:270px}}
@media(max-width:620px){.hero{display:block;min-height:550px;border-radius:14px;padding-bottom:215px}.hero-copy{width:100%;min-height:0;max-width:none;padding:27px 23px 18px;display:flex;align-items:flex-start;justify-content:flex-start}.hero-copy h2{font-size:29px;line-height:1.95;margin-bottom:13px}.hero-copy p{max-width:100%;font-size:11px;line-height:2.15;color:#d1dbe0}.hero-copy .button{margin-top:19px}.hero-art{position:absolute;inset:0;height:100%;width:100%;margin:0;min-height:0}.hero .hero-photo{position:absolute;min-height:0;height:100%}.hero-photo .project-photo{object-position:27% 60%}.hero-photo:after{background:linear-gradient(180deg,#142b40 0%,#142b40fc 25%,#142b40eb 41%,#142b4077 65%,#142b400d 84%,#142b401a 100%)}.hero-photo .photo-tag{bottom:15px;left:14px;font-size:8px;padding:4px 7px}.hero-photo .photo-expand{opacity:1;transform:none;right:14px;left:auto;bottom:15px;padding:6px 8px;background:#f8f2e7dd;border-color:#ffffff24}.hero-photo .photo-expand>span{font-size:9px}.hero-photo .photo-expand .icon{width:13px;height:13px}.project-art .photo-tag,.project-art .project-code{bottom:16px}.project-card{border-radius:14px}.project-body{padding-top:7px}.detail-art{height:245px;margin-bottom:0;border-radius:14px 14px 0 0}.detail-art+.panel{border-radius:0 0 14px 14px;padding-top:12px}.photo-dialog{width:calc(100vw - 22px);border-radius:14px}.photo-gallery figure>img{width:100%;height:auto;max-height:none;border-radius:10px;object-fit:contain}.media-reveal{transform:translateY(9px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.media-reveal,.project-photo.photo-progressive,.photo-gallery figure>img.photo-progressive{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}.hero-photo .photo-expand{transition:none;transform:none}}
@media print{.media-reveal,.project-photo.photo-progressive,.photo-gallery figure>img.photo-progressive{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}.detail-art+.panel{border-top:1px solid #e1e2dc;border-radius:0}.hero{display:none!important}}
