/* The opening and closing share a restrained scale and precise rules. */
body.brand-site .opening-screen{background:transparent;overflow:visible}
.brand-site .brand-opening .opening-panel{position:absolute;left:0;right:0;width:100%;height:calc(50% + 1px);background:#111;will-change:transform}
.brand-site .brand-opening .opening-panel-top{top:0;bottom:auto}.brand-site .brand-opening .opening-panel-bottom{top:auto;bottom:0}
body.brand-site .opening-mark{top:calc(50% - 58px);width:clamp(190px,24vw,340px);max-width:none}
.brand-site .opening-top{top:32px;left:40px;right:40px;color:#888;font-size:9px}
.brand-site .opening-top>span:last-child{display:none}
.brand-site .opening-stroke{top:50%;left:0;width:100%;background:transparent;height:1px}
.brand-site .opening-stroke>span{background:#ffffff45;transform-origin:center}
body.brand-site .opening-detail{top:calc(50% + 25px);left:24px;width:calc(100% - 48px);text-align:center;color:#aaa;font-size:11px;letter-spacing:.015em}
body.brand-site .opening-foot{bottom:30px;left:40px;right:40px;font-size:9px}
body.brand-site .site-footer{background:#111;color:#fafafa;padding-top:0}
.brand-site .footer-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;padding:80px 0 65px;border-bottom:1px solid #ffffff25}
.brand-site .footer-heading .label{display:block;color:#969696;font-size:10px;margin-bottom:28px}
.brand-site .footer-heading h2{font-size:clamp(48px,6.1vw,94px);line-height:.99;letter-spacing:-.055em;margin:0;max-width:950px}
.brand-site .footer-studio-link{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:18px 0;border-bottom:1px solid #777;font-size:13px;min-width:180px;flex-shrink:0;margin-bottom:6px}
.brand-site .footer-studio-link .ui-icon{width:23px;height:23px;transition:transform .25s}
.brand-site .footer-studio-link:hover .ui-icon{transform:translate(3px,-3px)}
.brand-site .footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:45px;padding:58px 0}
.brand-site .footer-brand>a{display:inline-block;line-height:0}.brand-site .footer-brand img{display:block;width:147px;height:auto;filter:brightness(0) invert(1)}
.brand-site .footer-brand p{font-size:12px;line-height:1.8;color:#aaa;margin:22px 0 25px;max-width:260px}
.brand-site .footer-brand>span{font-size:10px;color:#777}
.brand-site .footer-links .label{font-size:9px;letter-spacing:.07em;color:#858585;margin-bottom:25px}
.brand-site .footer-links a{display:block;font-size:12px;line-height:1.6;color:#d4d4d4;margin-bottom:12px;width:fit-content;text-decoration:none;text-underline-offset:5px}
.brand-site .footer-links a:hover{color:#fff;text-decoration:underline}
.brand-site .footer-links.last{grid-column:auto}
.brand-site .group-endorsement{display:flex;align-items:center;gap:23px;padding:24px 0;margin:0;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;font-size:10px;color:#888}
.brand-site .group-endorsement img{width:60px;height:26px;object-fit:contain;filter:brightness(0) invert(1)}
.brand-site .group-endorsement>a:last-child{margin-left:auto;display:flex;gap:15px;align-items:center;font-size:10px;color:#ccc}.brand-site .group-endorsement .ui-icon{width:15px;height:15px}
.brand-site .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px 0;border:0;font-size:10px;color:#888}
.brand-site .foot-nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.brand-site .foot-nav a{color:#aaa}
.brand-site .footer-concept{border-top:1px solid #ffffff12;color:#777;font-size:9px}
.brand-site .footer-concept summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:16px 0;min-height:44px;width:100%;font-size:9px}
.brand-site .footer-concept summary::-webkit-details-marker{display:none}.brand-site .footer-concept summary .ui-icon{width:12px;height:12px}.brand-site .footer-concept[open] summary .ui-icon{transform:rotate(45deg)}
.brand-site .footer-concept .demo-line{padding:0 0 20px;border:0;color:#999;max-width:850px;font-size:10px}.brand-site .demo-line a{display:inline-block;margin-left:12px;text-decoration:underline}
.brand-site .site-footer a:focus-visible,.brand-site .footer-concept summary:focus-visible{outline:2px solid #fff;outline-offset:6px}
@media(max-width:960px){.brand-site .footer-top{grid-template-columns:1.2fr 1fr 1fr;gap:35px}.brand-site .footer-brand{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:start}.brand-site .footer-brand p{margin:0;grid-column:2;grid-row:1/3}.brand-site .footer-brand>span{margin-top:15px}.brand-site .footer-heading{gap:24px}.brand-site .footer-studio-link{min-width:145px}}
@media(max-width:600px){body.brand-site .opening-mark{top:calc(50% - 48px);width:210px}.brand-site .opening-top{top:25px;left:24px;right:24px;font-size:8px;max-width:none}.brand-site .opening-top>span:first-child{max-width:none}body.brand-site .opening-foot{left:24px;right:24px;bottom:25px;font-size:8px}.brand-site .footer-heading{display:block;padding:54px 0 38px}.brand-site .footer-heading h2{font-size:clamp(36px,9.6vw,57px);line-height:1.03}.brand-site .footer-heading .label{margin-bottom:23px;font-size:9px}.brand-site .footer-studio-link{margin:26px 0 0;width:175px;min-width:0;font-size:12px;padding:13px 0}.brand-site .footer-top{grid-template-columns:1fr 1fr;gap:33px 20px;padding:35px 0}.brand-site .footer-brand{display:block}.brand-site .footer-brand img{width:127px}.brand-site .footer-brand p{margin:18px 0 13px}.brand-site .footer-brand>span{font-size:9px}.brand-site .footer-links .label{margin-bottom:17px}.brand-site .footer-links a{font-size:11px}.brand-site .group-endorsement{display:grid;grid-template-columns:60px 1fr;gap:14px 18px;font-size:9px;line-height:1.6;padding:22px 0}.brand-site .group-endorsement>a:last-child{grid-column:2;margin-left:0;justify-self:start;font-size:9px}.brand-site .footer-bottom{align-items:flex-start;font-size:9px;gap:20px;padding:22px 0}.brand-site .foot-nav{justify-content:flex-end;gap:10px 16px;max-width:210px}.brand-site .footer-concept .demo-line{font-size:9px}}
@media(prefers-reduced-motion:reduce){.brand-site .footer-studio-link .ui-icon{transition:none}}
