/* Presentation is confined to the replacement hero and its two old containers. */
.ksg-page .elementor-element-bba8a17,
.ksg-page .elementor-element-f0b1f98 { display:none !important; }
#ksg-hero, #ksg-hero * { box-sizing:border-box; }
#ksg-hero {
    position:relative; isolation:isolate; width:100%; height:100vh; height:100svh;
    min-height:620px; margin:0; padding:0; overflow:hidden;
    background:#051018; color:#f4f1ea; font-family:Arial,Helvetica,sans-serif;
}
body.admin-bar #ksg-hero { height:calc(100svh - 32px); }
#ksg-hero .ksg-scene { position:absolute; inset:0; z-index:-3; }
#ksg-hero .ksg-scene-image {
    position:absolute; inset:0; width:100%; height:100%; max-width:none;
    object-fit:cover; object-position:50% 50%; margin:0; padding:0; border:0; display:block;
}
#ksg-hero .ksg-monoliths { position:absolute; inset:0; width:100%; height:100%; opacity:1; overflow:hidden; }
#ksg-hero .ksg-artwork { position:absolute; inset:0; pointer-events:none; opacity:0; mix-blend-mode:screen; isolation:auto; }
#ksg-hero .ksg-artwork img {
    position:absolute; height:78%; width:52%; max-width:none; right:4%; bottom:3%;
    object-fit:contain; object-position:50% 55%; margin:0; padding:0; border:0;
    -webkit-mask-image:radial-gradient(ellipse 51% 48% at 52% 49%,#000 48%,transparent 100%);
    mask-image:radial-gradient(ellipse 51% 48% at 52% 49%,#000 48%,transparent 100%);
}
#ksg-hero .ksg-artwork.ksg-magenta img { right:10%; bottom:5%; height:72%; width:49%; }
#ksg-hero .ksg-shade {
    position:absolute; inset:0; z-index:-1; pointer-events:none;
    background:linear-gradient(90deg,rgba(0,0,0,.15),transparent 68%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 52%);
}
#ksg-hero .ksg-copy {
    position:absolute; left:4.2%; bottom:12%; width:47%; max-width:665px;
    text-shadow:0 2px 18px #0009;
}
#ksg-hero .ksg-copy h1 {
    color:#f4f1ea; font-family:inherit; font-size:clamp(26px,3.15vw,49px);
    line-height:1.16; letter-spacing:-.025em; font-weight:400; text-transform:none;
    margin:0 0 22px; padding:0;
}
#ksg-hero .ksg-copy p { max-width:365px; color:#e0e4e4; font-family:inherit; font-size:15px; line-height:1.65; margin:0 0 30px; }
#ksg-hero .ksg-explore {
    display:inline-flex; align-items:center; gap:24px; color:#111; text-decoration:none;
    background:#eeeae4; border:0; border-radius:24px; padding:13px 23px;
    font-family:inherit; font-size:14px; line-height:1.25; text-shadow:none;
}
#ksg-hero .ksg-explore span { font-size:12px; }
#ksg-hero .ksg-explore:hover { background:#fff; color:#111; }
#ksg-hero .ksg-toggle {
    position:absolute; bottom:27px; right:4.2%; color:#fff; background:#061018bb;
    border:1px solid #ffffff66; border-radius:24px; padding:11px 17px;
    font-family:inherit; font-size:12px; font-weight:400; line-height:1.3;
    letter-spacing:normal; text-transform:none; min-width:137px; cursor:pointer;
}
#ksg-hero .ksg-toggle[hidden] { display:none; }
#ksg-hero .ksg-caption {
    position:absolute; bottom:34px; left:4.2%; font-size:10px; line-height:1.3;
    letter-spacing:.17em; text-transform:uppercase; color:#d6e1e7;
}
#ksg-hero .ksg-toggle:focus-visible, #ksg-hero .ksg-explore:focus-visible { outline:2px solid #f1c08e; outline-offset:5px; }
@media(max-width:720px) {
    #ksg-hero, body.admin-bar #ksg-hero { height:820px; min-height:750px; }
    #ksg-hero .ksg-copy { left:24px; right:24px; width:auto; bottom:100px; }
    #ksg-hero .ksg-copy h1 { font-size:32px; max-width:400px; }
    #ksg-hero .ksg-copy p { font-size:13px; max-width:300px; margin-bottom:20px; }
    #ksg-hero .ksg-artwork img { width:100%; height:49%; right:-10%; bottom:33%; }
    #ksg-hero .ksg-artwork.ksg-magenta img { width:100%; height:48%; right:-6%; bottom:34%; }
    #ksg-hero .ksg-caption { left:24px; max-width:145px; line-height:1.6; }
    #ksg-hero .ksg-toggle { right:24px; }
}
