/* ASTRA 4.1: Mobile-safe, working redesign from the fully functional 3.9 app. */
:root{--bg:#302f30;--gold:#d4baa0;--goldlight:#f5dfc3;--text:#f6efe5;--muted:#c5b9ae;}
html,body{background:radial-gradient(ellipse 95% 40% at 64% 0%,rgba(113,107,99,.29),transparent 72%),linear-gradient(180deg,#343333 0%,#302e2e 60%,#2b2b2b 100%);}
body.on-home .site-shell{max-width:720px;padding-left:clamp(10px,2.4vw,20px);padding-right:clamp(10px,2.4vw,20px);}
body.on-home .astra-hero{background:radial-gradient(ellipse 65% 78% at 74% 37%,#6b6660 0%,rgba(79,75,70,.95) 38%,transparent 90%),linear-gradient(116deg,#353331 2%,#45413e 61%,#59514b 100%);min-height:clamp(170px,55vw,300px);}
body.on-home .astra-hero::after{background:linear-gradient(90deg,rgba(40,38,37,.54) 0%,rgba(40,38,37,.14) 52%,transparent 86%),linear-gradient(0deg,#353434 0%,transparent 15%);}
body.on-home .hero-statue-bg{background-image:url('./assets/statue41.webp');right:-5%;top:-5%;width:81%;height:123%;background-size:contain;background-repeat:no-repeat;background-position:right center;mask-image:none;-webkit-mask-image:none;opacity:1;image-rendering:auto;}
body.on-home .astra-hero h1{font-family:'Prata',Georgia,serif;color:#fff4e7;max-width:57%;font-size:clamp(17px,4.45vw,32px);line-height:1.32;letter-spacing:-.045em;overflow-wrap:normal;}
body.on-home .astra-brand-name{letter-spacing:.24em;font-weight:600}
body.on-home .reference-cta{box-shadow:0 14px 35px rgba(0,0,0,.23),inset 0 1px rgba(255,255,255,.14);border-color:rgba(243,227,203,.50);}
body.on-home .reference-cards{gap:clamp(6px,1.55vw,12px);grid-template-columns:repeat(3,minmax(0,1fr))!important;}
body.on-home .reference-card{border-radius:clamp(12px,2.2vw,20px)!important;border-color:rgba(235,219,200,.32)!important;box-shadow:0 7px 18px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.11)!important;}
body.on-home .reference-card::before{background-position:center top;background-size:cover;transform:none;}
body.on-home .reference-card::after{background:linear-gradient(180deg,rgba(20,20,21,0) 0%,rgba(22,22,23,.035) 40%,rgba(19,20,21,.85) 100%);}
body.on-home .card-copy{left:clamp(7px,1.5vw,15px);right:clamp(6px,1.3vw,15px);bottom:clamp(9px,1.6vw,14px);gap:3px;}
body.on-home .card-copy strong{font-size:clamp(10px,2.7vw,18px)!important;font-weight:700;white-space:normal;overflow-wrap:break-word;letter-spacing:-.06em;line-height:1.05;}
body.on-home .card-copy small{font-size:clamp(7px,1.65vw,11px)!important;line-height:1.26;letter-spacing:-.02em;}
body.on-home .card-icon{color:#f4dbb8;width:clamp(16px,3vw,25px);height:clamp(16px,3vw,25px)}
body.on-home .reference-disclaimer{color:#cabbae;}
body.on-home .reference-home{overflow:hidden!important;}
/* Visible atmospheric lines: no traveling dashes, opaque rectangles or moving bounds. */
body.on-home .silk-background-v39,body.on-home .hero-sheen-v39{display:none!important;}
body.on-home .silk-flow41{display:block;position:absolute;top:0;left:-1%;width:102%;height:100%;z-index:4;pointer-events:none;mix-blend-mode:screen;overflow:visible;opacity:.75;}
body.on-home .silk-flow41 .silk-wide41{fill:none;stroke:url(#silkGold41);stroke-width:27;filter:url(#silkBlur41);opacity:.64;stroke-linecap:round;}
body.on-home .silk-flow41 .silk-core41{fill:none;stroke:url(#silkGold41);stroke-width:5.5;filter:url(#silkBlurFine41);opacity:.68;stroke-linecap:round;}
body.on-home .silk-flow41 .silk-band41{animation:silkShift41 16s ease-in-out infinite alternate;transform-origin:center center;}
body.on-home .silk-flow41 .silk-band41-mid{animation-duration:20s;animation-delay:-6s;opacity:.65;}
body.on-home .silk-flow41 .silk-band41-low{animation-duration:24s;animation-delay:-9s;opacity:.8;}
@keyframes silkShift41{0%{transform:translate3d(-5px,-3px,0)}50%{transform:translate3d(0,6px,0)}100%{transform:translate3d(5px,-2px,0)}}
/* The graphics stay behind controls' touch targets; readable text remains real DOM text. */
body.on-home .astra-brand,body.on-home .profile-round,body.on-home .astra-hero h1,body.on-home .cta-content,body.on-home .card-copy{z-index:6;}
body.on-home .reference-cta,body.on-home .reference-cards,body.on-home .reference-disclaimer{z-index:5;}
/* Restore approved premium navigation dimensions, unlike the oversized 4.0 mockup. */
body .site-shell .bottom-nav{width:min(calc(100vw - 30px),665px);height:64px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:5px 6px 6px;border:1px solid rgba(242,225,203,.45);border-radius:30px;background:linear-gradient(150deg,rgba(107,100,96,.9),rgba(67,64,64,.94));box-shadow:0 14px 32px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.12),0 0 14px rgba(243,217,183,.06)}
body .site-shell .bottom-nav .nav-button{min-height:0;gap:3px;font-size:10px;line-height:1.2;align-items:center;justify-content:center;color:#e8e0d7;}
body .site-shell .bottom-nav .nav-button svg{width:21px;height:21px;}
body .site-shell .bottom-nav .nav-button.active{color:#fff0db;}
body .site-shell .bottom-nav .nav-button.active::after{height:2px;bottom:0;box-shadow:0 0 10px 2px rgba(255,214,163,.34);}
@media(max-width:360px){body.on-home .astra-hero h1{font-size:15.5px;top:21vw;}body.on-home .reference-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}body.on-home .card-copy strong{font-size:9.5px!important;}body.on-home .card-copy small{font-size:7px!important;}body .site-shell .bottom-nav{width:calc(100vw - 20px);}}
@media(prefers-reduced-motion:reduce){body.on-home .silk-flow41 .silk-band41{animation:none!important;}}
