/* Progressive replacement for the stretched star/dust images on the homepage. */
.studio-home .samim-atmosphere{position:fixed;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;contain:strict}
.studio-home .has-live-atmosphere .hero_stars,
.studio-home .has-live-atmosphere .hero_dust{display:none!important}
.studio-home .samim-atmosphere-control{position:relative;display:block;margin:10px auto 0;min-height:32px;padding:5px 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:#c9cddd;font-size:11px;line-height:1.5;cursor:pointer}
.studio-home .samim-atmosphere-control:hover{border-color:#ff9854;color:#fff}
.studio-home .samim-atmosphere-control[hidden]{display:none}
.intro-pending .samim-atmosphere,.intro-pending .samim-atmosphere-control{visibility:hidden}
@media(max-width:600px){.studio-home .samim-atmosphere-control{min-height:44px;margin-top:4px}}

/* A fine, full-page film grain. Cached noise shifts discretely, never the content. */
.studio-home .samim-film-grain{position:fixed;inset:-32px;z-index:999;pointer-events:none;background-repeat:repeat;background-size:192px 192px;opacity:.058;animation:samim-grain-shift 1s steps(1,end) infinite;contain:strict}
.studio-home .samim-atmosphere-control-footer{margin:20px auto 0}
@keyframes samim-grain-shift{0%,100%{transform:translate(0,0)}12.5%{transform:translate(-17px,11px)}25%{transform:translate(9px,-23px)}37.5%{transform:translate(-26px,-8px)}50%{transform:translate(20px,18px)}62.5%{transform:translate(-7px,25px)}75%{transform:translate(25px,-17px)}87.5%{transform:translate(-20px,6px)}}
@media(prefers-reduced-motion:reduce){.studio-home .samim-film-grain{animation:none;transform:none}}

/* Pivot measured from the orange ring in the source frame, rather than its
   slightly offset transparent video canvas. Translate restores its visual center. */
.studio-home #samim-journey-art{transform-origin:50.15% 49.43%;translate:-.15% .57%;filter:drop-shadow(0 0 14px #ff4f1699) drop-shadow(0 0 42px #ff450c55)}
.studio-home .samim-painted-cloud{filter:blur(5px);mix-blend-mode:screen}

/* The same video settles into a reserved logo position, without crossfading. */
.samim-orb-stage{position:fixed;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;pointer-events:none;transform:translate3d(0,var(--orb-y,0px),0)}
.studio-home .samim-orb-stage #samim-journey-art{width:var(--orb-size);height:var(--orb-size);min-width:0;max-width:none;flex:none;opacity:1!important;mask-image:none!important;-webkit-mask-image:none!important}
.samim-logo-dock{height:150px;width:100%;flex:none;pointer-events:none}
.intro-pending .samim-orb-stage{visibility:hidden!important}
@media(max-width:767px){.samim-logo-dock{height:120px}}
/* Feather the scene boundary as well as each individual brush texture. */
.studio-home .hero_clouds{position:absolute;inset:0;width:100%;height:100%;z-index:6;pointer-events:none;mask-image:linear-gradient(#000 0%,#000 70%,#0000 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 70%,#0000 100%)}

/* Nearer clouds grow and cross the viewer faster, on the other side of the logo. */
.samim-depth-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;contain:strict;mask-image:linear-gradient(#0000 0px,#000 150px,#000 calc(100% - 40px),#0000 100%)}
.samim-depth-middle{z-index:11}
.samim-depth-near{z-index:13}
.samim-depth-cloud{position:absolute;left:0;top:0;max-width:none;height:auto;opacity:0;transform-origin:center;filter:blur(4px);pointer-events:none}
.samim-depth-near .samim-depth-cloud{filter:blur(11px)}
.intro-pending .samim-depth-layer{visibility:hidden}
@media(prefers-reduced-motion:reduce){.samim-depth-layer{display:none}}
/* Keep the meaning with the complete wordmark, before the approach heading. */
.samim-meaning{position:relative;z-index:14;width:100%;margin:0 auto clamp(56px,8vw,112px);text-align:center}
.samim-definition{max-width:620px;margin:20px auto 0;padding:0 8px;color:#e4e7ed;font-size:clamp(17px,1.6vw,24px);line-height:1.6;text-wrap:pretty}
@media(max-width:767px){.samim-definition{max-width:440px;margin-top:12px}.samim-meaning{margin-bottom:64px}}
/* Original hidden states retained a ghost of the fixed hero behind later copy. */
.studio-home .hero_content:not(.show),.studio-home .hero_bottom-card-wrapper:not(.show){opacity:0!important;visibility:hidden;pointer-events:none}
.studio-home .video-scroll{transform:none}
.studio-home .hero_wrapper{position:absolute;top:var(--hero-center,45svh);left:0;right:0;transform:translateY(-50%)}
.studio-home .hero_heading.text-align-center{line-height:1.05}
@media(max-height:600px){
 .studio-home .hero_heading.text-align-center{font-size:clamp(28px,7svh,42px)}
 .studio-home .hero_content{gap:8px}
 .studio-home .hero_content .button{padding:8px 16px;font-size:13px;min-height:36px}
 .studio-home .hero_bottom-card-container{bottom:16px}
}
@media(min-width:480px) and (max-height:600px){
 .studio-home .hero_bottom-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
 .studio-home .hero_bottom-card{padding:10px;gap:8px;white-space:normal}
 .studio-home .hero_bottom-card-text{font-size:12px;flex-direction:column}
 .studio-home .hero_bottom-card-svg{width:20px;height:20px;transform:none}
}

@media(max-height:650px){
 .studio-home .hero_heading.text-align-center{font-size:clamp(28px,6svh,36px)}
 .studio-home .hero_heading .h-text{font-size:inherit!important}
 .studio-home .hero_content{gap:4px}
 .studio-home .hero_content>.margin-top{margin-top:8px}
 .studio-home .hero_content .button{padding:8px 16px;font-size:13px;min-height:36px}
 .studio-home .hero_content .samim-atmosphere-control{margin-top:4px}
}

@media(min-width:480px) and (max-height:450px){
 .studio-home .hero_heading.text-align-center{font-size:26px}
 .studio-home .hero_content .samim-atmosphere-control{position:absolute;left:calc(50% - 50vw + 16px);top:50%;transform:translateY(-50%);min-height:44px;white-space:nowrap}
}
@media(min-width:480px) and (max-height:600px){
 .studio-home .hero_bottom-cards{place-items:stretch;grid-template-rows:auto}
 .studio-home .hero_bottom-card-right{width:100%;height:100%;min-width:0}
 .studio-home .hero_bottom-card{width:100%;height:100%;min-height:60px;flex-flow:row nowrap;justify-content:flex-start;box-shadow:none}
 .studio-home .hero_bottom-card-text{min-width:0;font-size:11px}
}
@media(min-width:480px) and (max-width:640px) and (max-height:600px){.studio-home .hero_bottom-card-svg{display:none}}

/* Keep the exact authored frames, with a stable image surface on every browser. */
#samim-journey-art.is-spinning{animation:samim-hero-spin 10s linear infinite}
@media(prefers-reduced-motion:reduce){#samim-journey-art.is-spinning{animation:none}}
.studio-home .hero_heading.text-align-center{display:flex;flex-direction:column;gap:4px;font-size:clamp(28px,4vw,56px);line-height:1.08}
.studio-home .hero_heading .h-text{font-size:inherit!important;line-height:inherit;display:block}
.studio-home .hero_content{gap:0;align-items:center;text-align:center}
.studio-home .hero_content>.margin-top{margin-top:16px}
.studio-home .hero_content .button{min-height:44px;padding:10px 18px;font-size:14px}
.studio-home .hero_content .samim-atmosphere-control{position:absolute;top:calc(50% + var(--ring-radius) + 6px);left:50%;transform:translateX(-50%);margin:0;white-space:nowrap;min-height:44px}
/* The links fill their grid cells at every height, including 480 to 767px. */
.studio-home .hero_bottom-cards{place-items:stretch}
.studio-home .hero_bottom-card-right{width:100%;height:100%;min-width:0}
.studio-home .hero_bottom-card{width:100%;height:100%;box-shadow:none}
@media(max-width:767px){
 .studio-home .hero_bottom-card{flex-wrap:nowrap}
 .studio-home .hero_bottom-card-text{white-space:normal}
 .studio-home .hero_heading.text-align-center{font-size:32px}
}
@media(max-height:650px){
 .studio-home .hero_heading.text-align-center{font-size:28px;gap:0}
 .studio-home .hero_content>.margin-top{margin-top:8px}
}
@media(min-width:480px) and (max-height:450px){
 .studio-home .hero_heading.text-align-center{font-size:22px}
 .studio-home .hero_content .samim-atmosphere-control{left:calc(50% - 50vw + 16px);top:50%;transform:translateY(-50%)}
}
@media(max-width:479px) and (max-height:650px){
 .studio-home .hero_bottom-cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto}
 .studio-home .hero_bottom-card{padding:8px;min-height:60px}
 .studio-home .hero_bottom-card-text{font-size:11px}
 .studio-home .hero_bottom-card-svg{display:none}
}
@media(min-width:480px) and (max-height:450px){
 .studio-home .hero_content>.margin-top{position:absolute;left:calc(50% + var(--ring-radius) + 18px);top:50%;transform:translateY(-50%);margin:0;white-space:nowrap}
}
@media(max-width:359px){.studio-home .hero_heading.text-align-center{font-size:30px}}
@media(max-width:479px) and (max-height:650px){.studio-home .hero_heading.text-align-center{font-size:26px}}
@media(min-width:480px) and (max-height:350px){.studio-home .hero_heading.text-align-center{font-size:18px}}
