/* SoulAlign Luxe Welcome v0.1.1 — namespaced, non-invasive */
:root {--sawl-purple:#483250;--sawl-ink:#4b3d4e;--sawl-soft:#77667b;--sawl-gold:#b5946c;--sawl-cream:#fffaf7}
#sa-welcome-luxe, #sa-welcome-luxe * {box-sizing:border-box}
#sa-welcome-luxe {display:none;position:fixed;z-index:2147483200;inset:0;overflow:auto;overscroll-behavior:contain;background:radial-gradient(ellipse at 3% 16%,#efe3ee 0,transparent 35%),radial-gradient(ellipse at 92% 90%,#f2e4d5 0,transparent 43%),linear-gradient(125deg,#fcf8fb 0%,#fffaf6 100%);color:var(--sawl-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;opacity:0;transition:opacity .36s ease;isolation:isolate;-webkit-font-smoothing:antialiased}
#sa-welcome-luxe.sawl-visible {display:block;opacity:1}
#sa-welcome-luxe.sawl-out {opacity:0;pointer-events:none}
body.sawl-body-open{overflow:hidden!important}
#sa-welcome-luxe button{font-family:inherit;cursor:pointer}
#sa-welcome-luxe button:focus-visible{outline:3px solid #ab79bd;outline-offset:4px}
#sa-welcome-luxe .sawl-bg-glow{position:absolute;border-radius:50%;filter:blur(7px);pointer-events:none;z-index:-1}
#sa-welcome-luxe .sawl-bg-glow-a{width:260px;height:260px;left:-90px;top:15%;background:rgba(237,211,234,.29)}
#sa-welcome-luxe .sawl-bg-glow-b{width:330px;height:330px;right:-100px;bottom:-150px;background:rgba(238,201,170,.25)}
#sa-welcome-luxe .sawl-shell{max-width:1390px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:26px clamp(22px,5vw,77px) 21px}
#sa-welcome-luxe .sawl-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;z-index:3}
#sa-welcome-luxe .sawl-brand{display:flex;align-items:center;gap:12px}
#sa-welcome-luxe .sawl-brandmark{display:grid;place-items:center;width:47px;height:47px;border:1px solid rgba(181,148,108,.45);border-radius:50%;color:#9d7799;font-family:Georgia,serif;font-size:35px;background:rgba(255,255,255,.6)}
#sa-welcome-luxe .sawl-logo{width:62px;height:62px;object-fit:contain;border-radius:10px;background:rgba(255,255,255,.84)}
#sa-welcome-luxe .sawl-brandname{color:#513a58;font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:500;line-height:1.04;letter-spacing:-.7px}
#sa-welcome-luxe .sawl-brandname small{display:block;margin-top:8px;color:#9f829d;font:700 8px/1.1 Arial,sans-serif;letter-spacing:2.0px}
#sa-welcome-luxe .sawl-skip{border:1px solid #e7dbe5!important;background:rgba(255,255,255,.8)!important;color:#795d7e!important;border-radius:999px;padding:10px 17px;font:600 13px Arial,sans-serif;transition:background .2s,transform .2s}
#sa-welcome-luxe .sawl-skip:hover{background:#f5edf4!important;transform:translateY(-1px)}
#sa-welcome-luxe .sawl-main{flex:1;min-height:590px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);align-items:center;gap:clamp(25px,5vw,80px);padding:17px 0 10px}
#sa-welcome-luxe .sawl-copy{position:relative;z-index:2;padding:13px 0 24px}
#sa-welcome-luxe .sawl-eyebrow{display:inline-flex;gap:9px;align-items:center;letter-spacing:3.4px;color:#a47c9e;font-size:10px;font-weight:800;text-transform:uppercase}
#sa-welcome-luxe .sawl-spark{color:#b39265;font-size:20px}
#sa-welcome-luxe .sawl-mini-tag{color:#b092aa;font-family:Georgia,serif;font-size:17px;font-style:italic;margin:25px 0 13px}
#sa-welcome-luxe h1{font-family:Georgia,"Times New Roman",serif;color:#4d3754;letter-spacing:-2.2px;font-size:clamp(45px,5.6vw,82px);font-weight:400;line-height:1.08;margin:0 0 24px;max-width:650px;text-wrap:balance}
#sa-welcome-luxe h1 em{display:block;color:#a47d9c;font-weight:400;letter-spacing:-1.8px}
#sa-welcome-luxe .sawl-description{color:#806f83;font-size:clamp(15px,1.22vw,17px);line-height:1.85;max-width:480px;margin:0 0 30px}
#sa-welcome-luxe .sawl-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
#sa-welcome-luxe .sawl-btn{border:0;min-height:55px;display:inline-flex;align-items:center;justify-content:center;gap:11px;border-radius:13px;padding:14px 22px!important;font-size:14px;font-weight:700;letter-spacing:.1px;transition:transform .23s,background .23s,box-shadow .23s;white-space:nowrap}
#sa-welcome-luxe .sawl-btn:hover{transform:translateY(-2px)}
#sa-welcome-luxe .sawl-primary{background:#57405f!important;color:#fff!important;box-shadow:0 10px 23px rgba(75,53,83,.18)}
#sa-welcome-luxe .sawl-primary:hover{background:#6c5075!important}
#sa-welcome-luxe .sawl-primary span{font-size:21px;line-height:.9}
#sa-welcome-luxe .sawl-secondary{background:rgba(255,255,255,.93)!important;color:#665071!important;border:1px solid #dfcde1!important;box-shadow:0 5px 20px rgba(77,54,87,.04)}
#sa-welcome-luxe .sawl-secondary:hover{background:#f7f0f8!important}
#sa-welcome-luxe .sawl-caption{margin:25px 0 0;color:#a091a2;font-size:11px;line-height:1.8;letter-spacing:.12px}
#sa-welcome-luxe .sawl-caption span{display:inline-block;padding:0 7px;color:#b69a71}
#sa-welcome-luxe .sawl-showcase{position:relative;padding:29px 20px 18px;min-width:0;align-self:center;width:100%;max-width:650px;justify-self:center}
#sa-welcome-luxe .sawl-orbit{position:absolute;pointer-events:none;border:1px solid rgba(188,163,181,.26);border-radius:50%;z-index:-1}
#sa-welcome-luxe .sawl-orbit-one{width:112%;height:105%;left:-2%;top:-2%;transform:rotate(-18deg)}
#sa-welcome-luxe .sawl-orbit-two{width:102%;height:117%;left:8%;top:-8%;transform:rotate(24deg)}
#sa-welcome-luxe .sawl-photo-frame{height:clamp(365px,37vw,530px);border:8px solid #fff;box-shadow:0 24px 75px rgba(83,60,77,.19),0 0 0 1px rgba(197,172,190,.14);border-radius:40% 40% 21px 21px / 23% 23% 21px 21px;overflow:hidden;position:relative;isolation:isolate;background:linear-gradient(145deg,#e8d6db,#f1e9e3)}
#sa-welcome-luxe .sawl-slide{position:absolute;inset:0;opacity:0;transform:scale(1.06);transition:opacity 1s ease, transform 5.6s ease;margin:0;pointer-events:none}
#sa-welcome-luxe .sawl-slide.is-active{opacity:1;transform:scale(1);pointer-events:auto}
#sa-welcome-luxe .sawl-slide img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.94)}
#sa-welcome-luxe .sawl-slide:after{content:'';position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(38,27,43,.57));pointer-events:none}
#sa-welcome-luxe .sawl-slide figcaption{position:absolute;bottom:26px;left:27px;right:18px;z-index:2;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.13)}
#sa-welcome-luxe .sawl-slide figcaption span{display:block;font-size:9px;letter-spacing:2.7px;font-weight:800;margin-bottom:8px}
#sa-welcome-luxe .sawl-slide figcaption strong{display:block;font:400 clamp(22px,3vw,34px)/1.2 Georgia,serif}
#sa-welcome-luxe .sawl-slider-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}
#sa-welcome-luxe .sawl-slide-arrow{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;border:1px solid #e2cfdc;background:rgba(255,255,255,.6);font-size:22px;color:#886b89;line-height:1}
#sa-welcome-luxe .sawl-dots{display:flex;align-items:center;gap:7px}
#sa-welcome-luxe .sawl-dots button{border:0;border-radius:99px;width:8px;height:8px;padding:0;background:#d9c5d8;transition:width .2s,background .2s}
#sa-welcome-luxe .sawl-dots button.is-active{background:#896487;width:29px}
#sa-welcome-luxe .sawl-footer{padding-top:13px;border-top:1px solid rgba(168,130,160,.17);display:flex;justify-content:space-between;gap:16px;align-items:center;color:#ae98a8;font-family:Georgia,serif;font-size:12px;font-style:italic}
#sa-welcome-luxe .sawl-footer span:last-child{font:700 9px/1.2 Arial,sans-serif;letter-spacing:2px;color:#b7a3b6}
#sa-welcome-luxe .sawl-install-help[hidden]{display:none!important}
#sa-welcome-luxe .sawl-install-help{position:fixed;inset:0;z-index:10;background:rgba(34,24,39,.54);display:grid;place-items:center;padding:20px}
#sa-welcome-luxe .sawl-help-card{background:#fffafd;width:min(100%,420px);border-radius:25px;padding:35px 29px 28px;text-align:center;box-shadow:0 25px 70px rgba(29,21,39,.27);position:relative}
#sa-welcome-luxe #sawl-help-close{position:absolute;right:19px;top:12px;background:transparent;border:0;font-size:26px;color:#807080}
#sa-welcome-luxe .sawl-help-icon{display:grid;place-items:center;border-radius:50%;width:57px;height:57px;margin:0 auto 12px;background:#f0e5f2;color:#64496d;font-size:26px}
#sa-welcome-luxe .sawl-help-card h2{margin:5px 0 10px;font:400 29px/1.2 Georgia,serif;color:#513957}
#sa-welcome-luxe .sawl-help-card p{margin:0 0 25px;color:#827285;font-size:15px;line-height:1.7}
@media(max-width:900px){
 #sa-welcome-luxe .sawl-shell{padding:20px 24px 16px}
 #sa-welcome-luxe .sawl-main{grid-template-columns:minmax(0,1fr) minmax(0,.88fr);gap:20px;min-height:570px}
 #sa-welcome-luxe h1{font-size:clamp(41px,5.7vw,62px)}
 #sa-welcome-luxe .sawl-photo-frame{height:430px}
 #sa-welcome-luxe .sawl-showcase{padding-left:5px;padding-right:6px}
}
@media(max-width:700px){
 #sa-welcome-luxe .sawl-shell{min-height:100dvh;padding:15px 19px 18px}
 #sa-welcome-luxe .sawl-brandname{font-size:22px}
 #sa-welcome-luxe .sawl-brandname small{letter-spacing:1.5px;font-size:7px}
 #sa-welcome-luxe .sawl-brandmark{width:39px;height:39px;font-size:30px}
 #sa-welcome-luxe .sawl-logo{width:57px;height:57px}
 #sa-welcome-luxe .sawl-skip{padding:8px 13px;font-size:12px}
 #sa-welcome-luxe .sawl-main{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:auto;padding:11px 0 18px}
 #sa-welcome-luxe .sawl-showcase{order:0;padding:15px 10px 1px;max-width:485px;margin:0 auto}
 #sa-welcome-luxe .sawl-photo-frame{height:clamp(235px,36vh,335px);border-width:6px;border-radius:35% 35% 14px 14px / 19% 19% 14px 14px}
 #sa-welcome-luxe .sawl-orbit{display:none}
 #sa-welcome-luxe .sawl-slide figcaption{left:21px;bottom:18px}
 #sa-welcome-luxe .sawl-slide figcaption strong{font-size:22px}
 #sa-welcome-luxe .sawl-slide figcaption span{font-size:8px}
 #sa-welcome-luxe .sawl-slider-controls{margin-top:8px;gap:13px}
 #sa-welcome-luxe .sawl-slide-arrow{width:29px;height:29px}
 #sa-welcome-luxe .sawl-copy{order:1;text-align:center;padding:14px 0 10px}
 #sa-welcome-luxe .sawl-eyebrow{font-size:9px;letter-spacing:2px}
 #sa-welcome-luxe .sawl-mini-tag{font-size:15px;margin:13px 0 8px}
 #sa-welcome-luxe h1{font-size:clamp(36px,9.4vw,54px);line-height:1.08;letter-spacing:-1.3px;margin:0 auto 11px;max-width:500px}
 #sa-welcome-luxe h1 em{letter-spacing:-.8px}
 #sa-welcome-luxe .sawl-description{font-size:13px;line-height:1.7;margin:0 auto 17px;max-width:440px}
 #sa-welcome-luxe .sawl-actions{justify-content:center;gap:10px}
 #sa-welcome-luxe .sawl-btn{min-height:46px;flex:1;padding:11px 13px!important;font-size:12px;border-radius:11px}
 #sa-welcome-luxe .sawl-caption{font-size:10px;margin:13px 0 0}
 #sa-welcome-luxe .sawl-caption span{padding:0 3px}
 #sa-welcome-luxe .sawl-footer{font-size:10px;padding-top:9px}
 #sa-welcome-luxe .sawl-footer span:last-child{font-size:8px;letter-spacing:1.5px}
}
@media(max-width:370px){
 #sa-welcome-luxe .sawl-shell{padding:12px 13px}
 #sa-welcome-luxe .sawl-photo-frame{height:225px}
 #sa-welcome-luxe .sawl-mini-tag{margin-top:9px}
 #sa-welcome-luxe .sawl-caption{font-size:9px}
}
@media(prefers-reduced-motion:reduce){#sa-welcome-luxe,#sa-welcome-luxe .sawl-slide,#sa-welcome-luxe .sawl-dots button{transition:none!important}}
