.ict-banner{position:relative;display:flex;align-items:center;width:100%;height:auto;min-height:220px;aspect-ratio:var(--ict-banner-aspect-ratio,21 / 9);overflow:hidden;background-color:#1a1a2e;background-repeat:no-repeat;background-position:center;background-size:cover;color:var(--ict-banner-text-color,#fff)}.ict-banner::before{content:'';position:absolute;inset:0;z-index:0;background-image:var(--ict-banner-bg-image,none);background-repeat:no-repeat;background-position:center;background-size:cover}.ict-banner-bg-js::before{opacity:0;transition:opacity 0.7s ease}.ict-banner-bg-js.ict-banner-bg-loaded::before{opacity:1}.ict-banner-overlay{position:absolute;inset:0;z-index:1;background:#000;opacity:var(--ict-banner-overlay-opacity,.3)}.ict-banner-character{position:absolute;left:4%;bottom:0;z-index:2;display:block;max-width:38%;max-height:92%;line-height:0}.ict-banner-js .ict-banner-character{opacity:0;transform:translateX(-60px)}.ict-banner-js.ict-banner-in-view .ict-banner-character{animation:ict-banner-character-in 1.8s cubic-bezier(.22,1,.36,1) both}.ict-banner-character-img{display:block;max-width:100%;max-height:92vh;height:auto}@keyframes ict-banner-character-in{from{opacity:0;transform:translateX(-60px)}to{opacity:1;transform:translateX(0)}}.ict-banner-content{position:relative;z-index:3;max-width:620px;padding:56px 32px}.ict-banner-js .ict-banner-content{opacity:0;transform:translateY(20px)}.ict-banner-js.ict-banner-in-view .ict-banner-content{animation:ict-banner-content-in 1.6s ease-out 0.25s both}.ict-banner-has-character .ict-banner-content{margin-inline-start:min(36%, 380px)}@keyframes ict-banner-content-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ict-banner-title{margin:0 0 12px;font-size:clamp(1.6rem, 4vw, 2.6rem);font-weight:700;line-height:1.2;color:inherit}.ict-banner-subtitle{margin:0 0 22px;max-width:520px;font-size:clamp(1rem, 2vw, 1.2rem);line-height:1.5;color:inherit;opacity:.92}.ict-banner-button{display:inline-block;padding:12px 28px;border-radius:999px;background:#e2a63c;color:#111;font-weight:600;text-decoration:none;transition:transform 0.2s ease,box-shadow 0.2s ease}.ict-banner-button:hover,.ict-banner-button:focus{transform:translateY(-2px);box-shadow:0 8px 20px rgb(0 0 0 / .25);color:#111}@media (max-width:782px){.ict-banner-character{max-width:40%}.ict-banner-has-character .ict-banner-content{margin-inline-start:0}.ict-banner-content{padding:24px}}