/* Art direction is scoped to the four homepage covers only. */
.home-cover{position:relative;isolation:isolate;overflow:hidden;padding:0;background:#242524;container-type:inline-size}
.home-cover .cover-scene{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0;box-shadow:none;transform:none;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.home-cover::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,#11141577,transparent 30%,transparent 70%,#11141533)}
.home-cover .cover-phone{position:absolute;z-index:3;display:block;height:85%;width:auto;aspect-ratio:393/852;right:7%;top:7%;padding:4px;border-radius:22px;background:#262629;box-shadow:0 24px 35px #0005,0 2px 6px #0005;transform:rotate(5deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.home-cover .cover-phone img{display:block;width:100%;height:100%;max-width:none;object-fit:fill;border-radius:18px;box-shadow:none;transform:none;transition:none}
.home-cover .cover-brand{position:absolute;z-index:2;left:25px;top:24px;color:#fff9ec;font-size:30px;line-height:1;letter-spacing:-.045em;font-weight:650}
.home-cover .cover-brand>span:not(.cover-checks){display:block;font:500 9px/1.4 ui-monospace,monospace;letter-spacing:.12em;margin-top:9px}
.home-cover .cover-caption{position:absolute;z-index:2;left:25px;bottom:25px;color:#fff9ec;font:500 10px/1.4 ui-monospace,monospace;letter-spacing:.09em}
.home-cover .cover-caption i{font-style:normal;margin:0 9px}
.home-cover .cover-open{position:absolute;z-index:4;bottom:19px;right:19px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#232421;background:#fffff0;font-size:20px;line-height:1;box-shadow:0 2px 8px #0001;transition:transform .3s}
.project-card:hover .home-cover .cover-scene,.home-cover:focus-visible .cover-scene,.home-cover:hover .cover-scene{transform:scale(1.035)}
.project-card:hover .home-cover .cover-phone,.home-cover:hover .cover-phone,.home-cover:focus-visible .cover-phone{transform:translateY(-5px) rotate(3deg)}
.project-card:hover .home-cover .cover-phone img,.home-cover:hover .cover-phone img{transform:none}
.project-card:hover .home-cover .cover-open,.home-cover:hover .cover-open{transform:translate(2px,-2px)}
.cover-checker .cover-brand{font-size:28px;letter-spacing:-.055em;text-shadow:0 2px 12px #0009}
.cover-checker .cover-checks{display:block;width:58px;height:10px;margin-top:10px;background:repeating-conic-gradient(#ffe057 0% 25%,transparent 0% 50%) 0 0/10px 10px}
.cover-checker .cover-phone{transform:rotate(4deg)}
.cover-tips::after{background:linear-gradient(0deg,#46291b35,transparent 35%)}
.cover-tips .cover-brand{color:#33251f;background:#fff8ebf5;padding:10px 14px 12px;border-radius:2px;font-family:Georgia,serif;font-size:31px;font-weight:400;box-shadow:0 4px 16px #47251412}
.cover-tips .cover-caption{color:#fff9ee;background:#302723ed;border-radius:3px;padding:7px 9px;left:24px;bottom:24px;font-size:9px}
.cover-tips .cover-phone{right:8%;background:#ece9e5;padding:4px;transform:rotate(7deg);box-shadow:0 23px 28px #59352445,0 2px 5px #0003}
.cover-offlo .cover-brand{font-family:Georgia,serif;font-size:47px;font-weight:400;letter-spacing:-.06em}
.cover-offlo .cover-brand>span{font-size:8px;letter-spacing:.08em;margin-top:8px}
.cover-offlo .cover-phone{background:#55525f;right:7%;transform:rotate(-5deg);box-shadow:0 24px 35px #0009,0 1px 5px #ffffff15}
.cover-offlo .cover-caption{color:#ffd9c0}
.home-cover.cover-offlo .cover-brand>span{display:table;background:#131623d9;padding:5px 7px;border-radius:3px;font-size:9px;letter-spacing:.04em}
.cover-fitness::after{background:linear-gradient(0deg,#062b37dd,transparent 57%)}
.cover-fitness .cover-brand{top:auto;bottom:48px;font-size:40px;letter-spacing:-.055em;color:#f2f8e8}
.cover-fitness .cover-caption{color:#bdf1d7}
.cover-fitness .cover-phone{background:#ebefe8;transform:rotate(5deg);box-shadow:0 24px 35px #0007,0 2px 6px #0004}
.project-card:hover .cover-offlo .cover-phone{transform:translateY(-5px) rotate(-3deg)}
.cover-rent{min-height:550px;text-decoration:none;outline-offset:-6px}
.cover-rent::after{background:linear-gradient(0deg,#3b332363,transparent 38%)}
.cover-rent .cover-scene{object-position:53% center}
.cover-rent .cover-phone{height:81%;right:13%;top:10%;padding:5px;background:#f2f1e9;border-radius:30px;transform:rotate(6deg);box-shadow:0 28px 45px #28332855,0 2px 5px #0002}
.cover-rent .cover-phone img{border-radius:25px}
.cover-rent .cover-rent-note{position:absolute;z-index:2;left:25px;top:25px;border:1px solid #fff8;background:#f8f5eade;backdrop-filter:blur(8px);padding:9px 14px;border-radius:50px;font-size:13px;line-height:1.4;color:#364637}
.cover-rent .cover-character{position:absolute;z-index:4;bottom:12%;left:7%;width:28%;max-width:175px;text-align:center;transform:rotate(-8deg);filter:drop-shadow(0 10px 14px #31432730)}
.cover-rent .cover-character img{width:100%;height:auto;max-width:none;border-radius:0;box-shadow:none;transform:none}
.cover-rent .cover-character>span{display:block;margin-top:-3px;background:#fcf9ea;padding:7px 10px;border-radius:40px;font-size:11px;line-height:1.35;color:#364637;white-space:nowrap}
.cover-rent .cover-open{width:42px;height:42px;right:24px;bottom:24px;font-size:24px}
@media(min-width:601px) and (max-width:900px){.home-cover .cover-brand{left:18px;top:19px;font-size:24px}.cover-offlo .cover-brand{font-size:40px}.home-cover .cover-caption{left:18px;bottom:19px;font-size:8px}.cover-tips .cover-brand{font-size:27px}.cover-rent .cover-phone{right:10%;height:70%;top:17%}.cover-rent .cover-character{width:31%;left:5%;bottom:11%}.cover-rent .cover-character>span{font-size:9px;padding:7px}.cover-rent .cover-rent-note{left:18px;top:22px;font-size:11px}}
@media(max-width:600px){.cover-rent{min-height:440px}.cover-rent .cover-phone{height:82%;top:10%;right:10%;border-radius:25px}.cover-rent .cover-phone img{border-radius:21px}.cover-rent .cover-rent-note{left:18px;top:17px;font-size:11px;padding:7px 11px}.cover-rent .cover-character{left:5%;bottom:10%;width:32%;max-width:140px}.cover-rent .cover-character>span{font-size:9px;padding:7px}.cover-rent .cover-open{width:33px;height:33px;bottom:18px;right:18px;font-size:20px}.home-cover .cover-brand{left:19px;top:20px}.cover-checker .cover-brand{font-size:24px}.cover-tips .cover-brand{font-size:28px;padding:8px 11px 10px}.cover-offlo .cover-brand{font-size:43px}.home-cover .cover-brand>span:not(.cover-checks){font-size:7px}.home-cover .cover-caption{left:19px;bottom:19px;font-size:8px}.cover-tips .cover-caption{font-size:7px}.home-cover .cover-phone{right:6%}.cover-rent .cover-phone{right:10%}.home-cover .cover-open{width:28px;height:28px;right:14px;bottom:14px;font-size:18px}}
@media(prefers-reduced-motion:reduce){.home-cover .cover-scene,.home-cover .cover-phone,.home-cover .cover-open{transition:none}.project-card:hover .home-cover .cover-scene,.home-cover:hover .cover-scene{transform:none}.project-card:hover .home-cover .cover-phone{translate:0 0}}
@media(max-width:900px){.cover-fitness .cover-brand{top:auto;bottom:42px;font-size:34px}}
@media(max-width:600px){.home-cover .cover-caption,.cover-tips .cover-caption{font-size:9px}.home-cover .cover-brand>span:not(.cover-checks){font-size:9px;letter-spacing:.03em}.cover-tips .cover-brand>span{font-size:8px}}
