:root{--ink:#171521;--night:#15131e;--muted:#65616f;--paper:#f6f5f8;--white:#fff;--lilac:#c8b2f4;--purple:#8d5be0;--violet:#5e38a3;--radius:30px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}:focus-visible{outline:3px solid #a175e8;outline-offset:4px}.skip{position:fixed;top:-60px;left:12px;z-index:1000;background:white;padding:12px}.skip:focus{top:12px}.site-header{height:86px;padding:0 clamp(22px,4vw,72px);display:flex;align-items:center;gap:32px;background:rgba(247,246,249,.94);backdrop-filter:blur(18px);position:relative;z-index:30}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:var(--ink);color:white;border-radius:13px;font-size:23px;font-weight:800;letter-spacing:-3px;padding-right:4px}.brand-mark span,.footer-brand span{color:var(--lilac)}.brand-word{font-weight:800;font-size:20px;letter-spacing:-1px;line-height:.78}.brand-word small{display:block;font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-top:7px}.tagline{font-size:11px;color:#8b8793;max-width:140px}.desktop-nav{display:flex;gap:clamp(13px,2vw,30px);align-items:center;margin-left:auto}.desktop-nav a{text-decoration:none;font-size:13px;font-weight:650}.desktop-nav a:hover,.footer a:hover{color:var(--purple)}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:6px 6px 6px 24px;border-radius:99px;background:var(--lilac);color:var(--ink);font-size:13px;font-weight:800;min-height:48px;text-decoration:none;border:0;white-space:nowrap;transition:transform .2s,background .2s}.pill:hover{transform:translateY(-2px);background:#d9c8fa}.pill-arrow{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;font-size:18px;font-weight:400}.menu-toggle,.menu-close{display:none}.section-pad{padding:clamp(76px,9vw,144px) clamp(20px,5vw,82px)}.kicker{font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--violet);margin:0 0 19px}.kicker.light{color:var(--lilac)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.055em}h1{font-size:clamp(60px,7.8vw,132px);line-height:.89;font-weight:800;max-width:1020px;margin-bottom:25px}h2{font-size:clamp(45px,5.5vw,85px);line-height:.99;font-weight:800;margin-bottom:0;max-width:1000px}h1 em,h2 em{font-style:normal;color:var(--purple)}.dark-section h2 em,.hero h1 em{color:var(--lilac)}h3{font-size:clamp(23px,2.1vw,33px);line-height:1.05}p{line-height:1.55}.section-heading{margin-bottom:52px}.section-heading.split{display:flex;justify-content:space-between;align-items:end;gap:50px}.section-heading.split>p{max-width:360px;margin-bottom:3px;color:var(--muted)}.dark-section{background:var(--night);color:white}.dark-section .section-heading.split>p{color:#c4bfce}.asset-label{position:absolute;z-index:2;top:20px;left:20px;display:inline-block;padding:8px 12px;border:1px solid currentColor;border-radius:50px;font-size:11px;font-weight:700;letter-spacing:.02em;max-width:calc(100% - 40px);background:rgba(255,255,255,.1);backdrop-filter:blur(8px)}.hero{min-height:calc(100svh - 86px);position:relative;overflow:hidden;background:#322a4d;color:white;display:flex;align-items:center}.hero-art{position:absolute;inset:0;background:radial-gradient(circle at 76% 30%,#b69cdd 0%,transparent 22%),linear-gradient(115deg,#1e1b30 15%,#4b3c6f 56%,#1d2032);overflow:hidden}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,15,28,.64),transparent 80%)}.art-rings{position:absolute;width:65vw;height:65vw;border:1px solid #ddd0f385;border-radius:50%;right:-8vw;top:-17vw;box-shadow:0 0 0 6vw #c8b2f40b,0 0 0 12vw #c8b2f413,0 0 0 19vw #c8b2f40b}.art-building{position:absolute;right:8%;bottom:-15%;height:86%;width:42%;transform:skewY(-9deg);border-radius:25px 25px 0 0;background:linear-gradient(110deg,#403752,#8d7ba9 47%,#2d263e);box-shadow:-30px 20px 60px #17132388;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:13% 12%}.art-building i{background:linear-gradient(130deg,#ddd5ed99,#5f587099);border:4px solid #453a56;box-shadow:inset 0 0 25px #251d3a}.hero-inner{position:relative;z-index:2;padding:80px clamp(20px,5vw,82px) 44px;width:100%}.hero-sub{font-size:clamp(16px,1.4vw,20px);max-width:550px;color:#e6e0ef;margin-bottom:28px}.light-pill{background:#eee9f7}.hero-points{display:grid;grid-template-columns:repeat(2,minmax(0,200px));gap:10px;margin-top:clamp(50px,8vh,105px)}.hero-points>div{display:flex;gap:12px;align-items:center;min-height:70px;padding:12px;border:1px solid #ffffff65;border-radius:18px;background:#ffffff24;backdrop-filter:blur(16px)}.hero-points p{font-size:12px;font-weight:700;margin:0;line-height:1.3}.point-icon{display:grid;place-items:center;min-width:32px;height:32px;border-radius:10px;background:#ffffff38;font-size:20px}.hero-side{position:absolute;z-index:3;right:24px;bottom:40px;writing-mode:vertical-rl;font-size:11px;color:#ddd6eb}.soft-card{border-radius:var(--radius);overflow:hidden}.concept{background:#f6f5f8}.concept-grid{display:grid;grid-template-columns:.92fr 1.5fr .9fr;gap:16px;min-height:500px}.concept-intro{background:#e9e4f3;padding:30px;display:flex;flex-direction:column;justify-content:space-between}.concept-intro p,.concept-product p{color:#625c6d;font-size:14px}.mini-symbol{font-size:35px;color:var(--purple)}.dark-pill{background:var(--ink);color:white}.dark-pill .pill-arrow{background:white;color:var(--ink)}.story-carousel{position:relative;background:#71608d;color:white;min-height:500px;touch-action:pan-y}.slide-visual{position:absolute;inset:0;background:linear-gradient(140deg,#a791c4,#39304d)}.slide-abstract{position:absolute;width:70%;aspect-ratio:1;right:-12%;top:8%;border-radius:25%;transform:rotate(-18deg);background:linear-gradient(135deg,#ded1ed,#4a405b);box-shadow:-45px 40px 50px #3027408f}.slide-abstract:before{content:"";position:absolute;inset:18%;border:3px solid #eee5f47a;border-radius:20%}.slide-caption{position:absolute;left:30px;right:30px;bottom:56px;z-index:2;text-shadow:0 2px 15px #0008}.slide-caption span,.card-count{font-size:12px;font-weight:800}.slide-caption h3{font-size:clamp(28px,3vw,47px);margin:13px 0 8px}.slide-caption p{margin:0;font-size:14px}.dots{display:flex;gap:8px;align-items:center}.story-carousel .dots{position:absolute;bottom:23px;left:30px;z-index:3}.dots button{border:0;width:9px;height:9px;padding:0;border-radius:50%;background:#ffffff75}.dots button.active{background:white;width:28px;border-radius:10px}.concept-product{background:var(--ink);color:white;padding:22px;display:flex;flex-direction:column;justify-content:end}.concept-product p{color:#c6bfcd}.product-image{position:relative;flex:1;min-height:260px;border-radius:22px;background:radial-gradient(circle,#977cc0,#362c4e 62%);overflow:hidden;margin-bottom:25px}.product-silhouette{position:absolute;width:48%;height:56%;border-radius:25px;left:25%;top:26%;background:linear-gradient(135deg,#e2d8ed,#75648e);transform:rotate(-16deg);box-shadow:20px 25px 30px #261e3c}.devices{overflow:hidden}.scene{height:clamp(410px,47vw,650px);border-radius:36px;position:relative;overflow:hidden;background:radial-gradient(circle at 60% 30%,#8977a5,#3e3854 52%,#242337);margin-bottom:18px}.scene:after{content:"";position:absolute;left:15%;right:15%;bottom:-10%;height:75%;background:linear-gradient(120deg,#b4a5ca,#494058 40%,#827390 75%,#2b2638);clip-path:polygon(0 35%,45% 0,100% 22%,100% 100%,0 100%);opacity:.8}.scene-lines{position:absolute;z-index:1;inset:10% 10% 8%;border:1px solid #d8c8ee55;border-radius:40px;transform:rotate(-7deg)}.hotspot{position:absolute;z-index:3;display:grid;place-items:center;width:42px;height:42px;border:1px solid white;border-radius:50%;background:#ffffffa8;color:var(--ink);font-weight:800;box-shadow:0 0 0 7px #ffffff38}.hotspot.active{background:var(--lilac);box-shadow:0 0 0 9px #d9c1ff78}.device-bottom{display:flex;align-items:stretch;gap:20px}.device-card{background:#292633;display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;max-width:680px;min-height:185px;padding:14px}.device-card>div:last-child{align-self:center}.device-card h3{margin:10px 0}.device-card p{color:#c6c0cc;font-size:14px;margin-bottom:0}.device-thumb{position:relative;min-height:158px;border-radius:19px;overflow:hidden;background:linear-gradient(145deg,#c2acd9,#5d5072)}.thumb-shape{position:absolute;width:54%;aspect-ratio:1;right:6%;bottom:-17%;border-radius:30px;transform:rotate(-25deg);background:linear-gradient(135deg,#eee9f4,#77638e)}.carousel-controls{display:flex;gap:10px;align-self:end;margin-left:auto}.carousel-controls button,.mobile-benefit-controls>button{width:52px;height:52px;border-radius:50%;border:1px solid #b4a5c5;background:transparent;color:white;font-size:22px}.benefit-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;align-items:center}.benefit-item{width:100%;display:grid;grid-template-columns:36px 1fr 30px;text-align:left;align-items:center;column-gap:15px;padding:27px 15px;border:0;border-top:1px solid #d7d2de;background:transparent;color:var(--ink)}.benefit-item:last-of-type{border-bottom:1px solid #d7d2de}.benefit-item>span:first-child{font-size:12px;color:var(--purple);font-weight:800}.benefit-item strong{font-size:clamp(22px,2.6vw,38px);letter-spacing:-.05em}.benefit-item .plus{font-size:28px;font-weight:300}.benefit-item p{grid-column:2/3;margin:14px 0 0;color:var(--muted);max-height:0;overflow:hidden;opacity:0;transition:max-height .3s,opacity .3s}.benefit-item.active p{max-height:140px;opacity:1}.benefit-stack{height:490px;position:relative}.benefit-visual{position:absolute;inset:0;border-radius:32px;overflow:hidden;display:flex;align-items:end;padding:30px;background:radial-gradient(circle at 70% 27%,#d6c7ea,#8e7cab 48%,#40344e);transition:transform .4s,opacity .4s;box-shadow:0 25px 45px #29203630}.benefit-visual:nth-child(2){background:radial-gradient(circle at 70% 30%,#c9c4ed,#69628e 60%,#322c4c)}.benefit-visual:nth-child(3){background:radial-gradient(circle at 70% 30%,#e2cbe6,#906c99 60%,#48344f)}.benefit-visual:not(.active){transform:translate(20px,20px) scale(.95);opacity:.42}.benefit-visual.active{z-index:2}.benefit-visual>span:last-child{font-size:140px;font-weight:800;color:#ffffffa1;line-height:1}.mobile-benefit-controls{display:none}.services{position:relative;overflow:hidden;background:#3c3552;color:white}.services-background{position:absolute;inset:0;background:linear-gradient(90deg,#191522ce,#242039a1),radial-gradient(circle at 70% 20%,#af9ac2,#463d60 57%,#211c32)}.services-background:after{content:"";position:absolute;right:8%;top:12%;height:75%;width:27%;border:2px solid #d1c4e557;border-radius:90px;transform:skew(-18deg)}.services-content{position:relative;z-index:1}.services h2 em{color:var(--lilac)}.services .section-heading.split>p{color:#ddd6e4}.service-scroller{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:26px;margin-bottom:20px;scrollbar-color:#c8b2f4 #ffffff22}.service-scroller article{flex:0 0 clamp(220px,23vw,310px);min-height:280px;border:1px solid #ffffff8a;border-radius:26px;background:#ffffff29;backdrop-filter:blur(16px);padding:24px;display:flex;flex-direction:column;scroll-snap-align:start}.service-scroller article>span{font-size:38px}.service-scroller h3{margin:auto 0 10px}.service-scroller p{font-size:13px;color:#e2dce8;margin-bottom:0}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.video-card{min-width:0}.video-stage{height:clamp(380px,42vw,620px);position:relative;border-radius:30px;overflow:hidden;background:#78688d}.video-stage video{width:100%;height:100%;object-fit:cover}.video-poster{position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,#d3c0e4,#6c5b83 55%,#342a46);display:grid;place-items:center}.video-card:nth-child(2) .video-poster{background:radial-gradient(circle at 65% 25%,#e0d5e6,#6f749a 55%,#343955)}.video-card:nth-child(3) .video-poster{background:radial-gradient(circle at 65% 25%,#c5bee0,#7d6294 55%,#392e52)}.video-glyph{font-size:150px;color:#ffffff6b}.video-control{position:absolute;z-index:3;left:22px;bottom:22px;width:59px;height:59px;border-radius:50%;background:white;border:0;font-size:20px;color:var(--ink)}.video-card h3{font-size:24px;margin:20px 0 5px}.video-card p{color:var(--muted);font-size:14px}.asset-note{font-size:13px;color:var(--muted);margin:20px 0 0}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw}.contact-copy h2{margin-bottom:25px}.contact-copy>p:not(.kicker){color:#c7c0cf;max-width:400px}.direct-links{margin:75px 0 35px}.direct-links a{display:flex;justify-content:space-between;gap:20px;font-size:clamp(20px,2vw,29px);font-weight:700;text-decoration:none;border-bottom:1px solid #6c6577;padding:17px 0;overflow-wrap:anywhere}.contact-address{font-size:13px}.form-card{background:#e7e1f0;color:var(--ink);padding:clamp(24px,4vw,54px);border-radius:32px}.form-card h3{font-size:42px;margin-bottom:10px}.form-card>p{font-size:14px;color:#5c5564;margin-bottom:26px}.field{margin-bottom:18px;min-width:0}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.field input,.field textarea{width:100%;background:#fff;border:1px solid #bcb2c9;border-radius:12px;padding:13px 14px;outline:none}.field input:focus,.field textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #a475df4a}.field [aria-invalid=true]{border-color:#a2204a}.field-error{display:block;color:#8e1640;min-height:3px;font-size:12px;margin-top:4px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.hp-field{position:absolute;left:-9999px}.form-privacy{font-size:12px;color:#5c5564}.submit-pill{margin-top:10px;background:var(--ink);color:#fff}.submit-pill .pill-arrow{background:var(--lilac);color:var(--ink)}#form-status{font-size:13px;margin:14px 0 0;min-height:20px}.footer{padding:20px clamp(20px,5vw,82px) 28px}.footer-brand{font-size:clamp(100px,21vw,390px);font-weight:800;letter-spacing:-.095em;line-height:.95;white-space:nowrap;overflow:hidden}.footer-bottom{border-top:1px solid #5a5561;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:23px;color:#c4beca;font-size:12px}.footer-bottom>div{display:flex;gap:24px}.footer-bottom a{text-decoration:none}.legal-page{min-height:80svh;padding:85px clamp(20px,8vw,140px) 120px;background:var(--paper)}.legal-page>div{max-width:850px}.legal-page h1{font-size:clamp(55px,7vw,95px);color:var(--ink)}.legal-page h2{font-size:28px;margin:45px 0 13px;letter-spacing:-.03em}.legal-page p,.legal-page li{color:#3e3947;line-height:1.7}.legal-page a{color:var(--violet)}.legal-notice{border-left:4px solid var(--purple);background:#eee8f5;padding:20px;border-radius:0 16px 16px 0;margin:30px 0}.legal-page address{font-style:normal;line-height:1.7}.legal-page ul{padding-left:23px}@media(max-width:1150px){.tagline,.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;margin-left:auto;width:48px;height:48px;border:1px solid #ccc4d6;background:transparent;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:5px}.menu-toggle span{width:19px;height:2px;background:var(--ink)}.menu-overlay{position:fixed;inset:0;background:#f4f1f8;z-index:100;padding:23px clamp(22px,5vw,60px);overflow-y:auto;display:flex;flex-direction:column}.menu-overlay[hidden]{display:none}.menu-top{display:flex;justify-content:space-between;align-items:center}.menu-close{display:grid;place-items:center;border:0;background:var(--ink);color:#fff;border-radius:50%;font-size:32px;width:48px;height:48px}.menu-overlay nav{display:flex;flex-direction:column;margin:10vh 0 5vh}.menu-overlay nav a{font-size:clamp(35px,7vw,70px);font-weight:800;letter-spacing:-.06em;text-decoration:none;border-bottom:1px solid #d7d0df;padding:8px 0}.menu-bottom{margin-top:auto;display:flex;gap:20px;align-items:center;flex-wrap:wrap}.social-placeholder{color:#746b7d;font-size:13px}.legal-links{display:flex;gap:20px;margin-left:auto;font-size:13px}.concept-grid{grid-template-columns:1fr 1.3fr}.concept-product{grid-column:1/-1;min-height:300px;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}.concept-product .product-image{grid-row:1/3;margin:0}.concept-product h3{align-self:end}.concept-product p{align-self:start}.art-building{right:-5%;width:55%}}@media(max-width:700px){.site-header{height:70px}.section-pad{padding:72px 20px}.hero{min-height:850px}.hero-inner{padding:70px 20px 30px}.hero-art{background:linear-gradient(140deg,#262238,#695584 70%,#39304f)}.art-building{right:-25%;bottom:13%;height:50%;width:75%;opacity:.7}.art-rings{width:110vw;height:110vw;right:-35vw;top:23vw}.hero h1{font-size:clamp(55px,13vw,86px)}.hero-sub{max-width:330px}.hero-points{grid-template-columns:1fr;margin-top:70px;max-width:430px}.hero-points>div{min-height:55px}.hero-side{display:none}.section-heading.split{display:block}.section-heading.split>p{margin:25px 0 0}.concept-grid{grid-template-columns:1fr}.concept-intro{min-height:350px}.story-carousel{min-height:450px}.concept-product{grid-column:auto;display:flex;min-height:420px}.concept-product .product-image{width:100%;min-height:220px;margin-bottom:20px}.scene{height:430px}.device-bottom{display:block}.device-card{grid-template-columns:105px 1fr;gap:15px;min-height:160px}.device-thumb{min-height:130px}.device-card h3{font-size:22px}.device-card p{font-size:12px}.carousel-controls{justify-content:flex-end;margin-top:15px}.benefit-layout{display:block}.benefit-item{display:none;border-bottom:1px solid #d7d2de}.benefit-item.active{display:grid}.benefit-stack{height:390px;margin-top:23px}.mobile-benefit-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:18px 0}.mobile-benefit-controls>button{color:var(--ink);border-color:#c4b9d2}.mobile-benefit-controls .dots button{background:#c8bdd5}.mobile-benefit-controls .dots button.active{background:var(--violet)}.service-scroller article{flex-basis:76vw;min-height:290px}.video-grid{grid-template-columns:1fr;gap:34px}.video-stage{height:540px}.contact-layout{grid-template-columns:1fr}.direct-links{margin:45px 0 20px}.field-row{grid-template-columns:1fr;gap:0}.footer-brand{font-size:22vw}.footer-bottom{flex-direction:column;align-items:start}.legal-links{margin-left:0}}@media(max-width:420px){.video-stage{height:480px}.device-card{grid-template-columns:95px 1fr}.device-thumb{min-height:135px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
[hidden]{display:none!important}
.story-carousel .pause-button{position:absolute;right:24px;bottom:17px;z-index:4;background:#ffffffd9;color:var(--ink);border:0;border-radius:99px;padding:7px 12px;font-size:11px;font-weight:700}
.brand-logo{display:block;width:260px;max-width:100%;height:auto;max-height:53px;object-fit:contain}
.language-switch{display:inline-flex;align-items:center;gap:2px;border:1px solid #d6d1df;border-radius:999px;padding:3px;flex:none;white-space:nowrap}
.language-switch a{display:grid;place-items:center;min-width:32px;min-height:30px;border-radius:999px;color:#625c6d;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.04em}
.language-switch a:hover{color:var(--violet)}
.language-switch a[aria-current="page"]{background:var(--ink);color:white}
@media(max-width:1150px){.language-switch{margin-left:auto}}
@media(max-width:700px){
  .brand-logo{width:220px;max-height:45px}
  .section-heading h2{font-size:clamp(30px,9.2vw,44px);hyphens:auto;overflow-wrap:anywhere}
  .section-heading.split>div{min-width:0}
}
.scene{background:#eeeae5 url('/media/smart-home-white-room.png') center center/cover no-repeat}
.scene:after,.scene-lines{display:none}
.scene .hotspot{width:46px;height:46px;background:rgba(31,26,42,.82);border:2px solid #fff;color:#fff;box-shadow:0 0 0 7px rgba(31,26,42,.18);font-size:23px}
.scene .hotspot.active{background:#7650b7;box-shadow:0 0 0 9px rgba(118,80,183,.3)}
@media(max-width:700px){.scene{background-position:59% center}.scene .hotspot{width:40px;height:40px;font-size:20px}}
.scene .hotspot{width:62px;height:62px;transform:translate(-50%,-50%);background:rgba(78,62,109,.62);border:2px solid rgba(255,255,255,.72);color:#fff;box-shadow:0 7px 24px rgba(32,20,52,.2);backdrop-filter:blur(6px);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.scene .hotspot:hover{transform:translate(-50%,-50%) scale(1.08);background:rgba(82,58,127,.82)}
.scene .hotspot.active{background:#f234a9;border-color:#ffb3e1;box-shadow:0 0 0 5px rgba(242,52,169,.18),0 7px 24px rgba(32,20,52,.2)}
.scene .hotspot svg{display:block;width:29px;height:29px;pointer-events:none}
@media(max-width:700px){.scene .hotspot{width:46px;height:46px}.scene .hotspot svg{width:23px;height:23px}}
.devices{background:linear-gradient(180deg,#15131e 0 61%,#fcf7fb 61% 100%)}
.devices .scene{margin-bottom:0}
.device-bottom{position:relative;z-index:5;display:grid;grid-template-columns:minmax(160px,25%) minmax(0,1fr);gap:18px;align-items:center;margin-top:-100px;overflow:visible}
.device-viewport{min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none}
.device-viewport::-webkit-scrollbar{display:none}
.device-rail{display:flex;gap:16px;width:max-content;padding:0 4px 9px}
.device-card{display:flex;flex-direction:column;flex:0 0 clamp(260px,23vw,340px);width:auto;max-width:none;min-height:398px;padding:0 27px 27px;border:1px solid #e9e1ec;border-radius:28px;background:linear-gradient(180deg,#39324f 0%,#785f8d 21%,#fdfafd 42%,#fdfafd 100%);color:var(--ink);text-align:left;scroll-snap-align:start;box-shadow:0 14px 35px rgba(46,30,61,.08);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.device-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(46,30,61,.14)}
.device-card.active{border-color:#bc95dd;box-shadow:0 0 0 3px rgba(190,139,224,.18),0 14px 35px rgba(46,30,61,.1)}
.device-card-media{display:grid;place-items:center;width:100%;height:205px;flex:none}
.device-card-media img{display:block;width:190px;height:160px;object-fit:contain;filter:drop-shadow(0 12px 10px rgba(37,24,50,.14))}
.device-card-title{display:block;margin-top:18px;font-size:clamp(21px,2vw,27px);font-weight:750;letter-spacing:-.04em;line-height:1.08}
.device-card-description{display:block;margin-top:10px;color:#766c80;font-size:14px;line-height:1.48}
.device-bottom .carousel-controls{display:flex;gap:12px;align-self:center;justify-content:flex-start;margin:0}
.device-bottom .carousel-controls button{width:56px;height:56px;border:0;border-radius:50%;background:#eee9f8;color:#221b2d;font-size:24px}
.device-bottom .carousel-controls button:not(:disabled):hover{background:#ded1f3}
@media(max-width:900px){.device-bottom{grid-template-columns:110px minmax(0,1fr)}.device-card{flex-basis:280px}}
@media(max-width:700px){.devices{background:linear-gradient(180deg,#15131e 0 57%,#fcf7fb 57% 100%)}.device-bottom{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:-68px}.device-viewport{width:100%}.device-card{flex-basis:260px;min-height:365px;padding:0 21px 23px}.device-card-media{height:182px}.device-card-media img{width:168px;height:145px}.device-bottom .carousel-controls{order:2;align-self:flex-end}}
.story-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}
.story-photo[hidden]{display:none}
.story-carousel.has-photo .slide-abstract,.story-carousel.has-photo .slide-visual .asset-label{display:none}
.story-carousel.has-photo .slide-visual::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(20,20,17,.76) 100%)}
.concept-product{position:relative;display:block;min-height:500px;padding:0;background:#f4f0e9;color:var(--ink);overflow:hidden}
.concept-product::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(252,250,246,.94) 0%,rgba(252,250,246,.68) 30%,transparent 58%)}
.product-photo{position:absolute;top:-60px;left:0;display:block;width:100%;height:calc(100% + 60px);object-fit:cover;object-position:57% center}
.product-copy{position:relative;z-index:2;padding:29px}
.concept-product h3{max-width:280px;margin:0 0 12px;color:#242125;font-size:clamp(28px,2.4vw,37px)}
.concept-product p{max-width:280px;margin:0;color:#57504d;font-size:14px;line-height:1.5}
@media(max-width:1150px){.concept-product{grid-column:1/-1;display:block;min-height:330px}.product-photo{object-position:56% 35%}.product-copy{max-width:52%}}
@media(max-width:700px){.concept-product{grid-column:auto;min-height:430px}.product-photo{object-position:58% center}.product-copy{max-width:none;padding:26px}}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.story-carousel{background:#efe9df;color:white}
.story-carousel::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 54%,rgba(30,27,23,.42) 100%)}
.story-carousel .story-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%}
.story-top-chip{position:absolute;z-index:2;top:23px;left:23px;max-width:calc(100% - 140px);padding:9px 15px;border-radius:999px;background:rgba(255,255,255,.84);color:#302b2c;font-size:12px;font-weight:750;backdrop-filter:blur(12px)}
.story-info{position:absolute;z-index:2;left:23px;right:23px;bottom:57px;display:flex;align-items:center;gap:13px;min-height:80px;padding:10px 16px 10px 10px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(42,39,39,.6);color:#fff;backdrop-filter:blur(16px);box-shadow:0 12px 28px rgba(24,20,18,.18)}
.story-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:#fff;color:#25212a}
.story-icon svg{display:block;width:28px;height:28px}
.story-info-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.story-info-copy strong{font-size:14px;line-height:1.2}
.story-info-copy>span:not(.sr-only){font-size:12px;line-height:1.3}
.story-carousel .dots{left:50%;bottom:23px;transform:translateX(-50%)}
.story-carousel .dots button{background:#ffffffa8;width:9px;height:9px}
.story-carousel .dots button.active{background:#f234a9;width:9px;border-radius:50%}
.story-carousel .pause-button{top:23px;right:23px;bottom:auto;background:rgba(255,255,255,.84)}
@media(max-width:700px){.story-top-chip{top:17px;left:17px;font-size:11px}.story-carousel .pause-button{top:17px;right:17px}.story-info{left:15px;right:15px;bottom:50px;gap:10px;min-height:74px;padding:8px 12px 8px 8px}.story-icon{flex-basis:46px;width:46px;height:46px}.story-icon svg{width:24px;height:24px}}

/* Light photographic hero: keep typography and controls independent from the image. */
.hero{background:#f8f5f0;color:#29232d}
.hero-art{background:#f8f5f0 url('/media/hero-light-woman.png') center center/cover no-repeat}
.hero-art::after{background:linear-gradient(90deg,rgba(250,248,245,.86) 0%,rgba(250,248,245,.52) 33%,rgba(250,248,245,0) 62%)}
.hero h1{max-width:min(60vw,790px);font-size:clamp(58px,6.5vw,110px);line-height:.94}
.hero h1 em{color:#70518e}
.hero .kicker.light{color:#634c70}
.hero-sub{color:#423b45}
.hero .light-pill{background:#fff;box-shadow:0 9px 28px rgba(56,42,57,.12)}
.hero-points{grid-template-columns:repeat(2,minmax(0,220px))}
.hero-points>div{border:1px solid rgba(77,63,82,.2);background:rgba(255,255,255,.78);color:#29232d;box-shadow:0 8px 24px rgba(57,45,56,.08)}
.hero .point-icon{background:#eee8f2;color:#533d68}
@media(max-width:700px){
  .hero{min-height:920px;align-items:flex-start}
  .hero-art{background-image:linear-gradient(180deg,#f8f5f0 0%,rgba(248,245,240,.96) 20%,rgba(248,245,240,.45) 48%,rgba(248,245,240,.1) 68%,rgba(248,245,240,.88) 100%),url('/media/hero-light-woman.png');background-size:cover,auto 74%;background-position:center,73% bottom;background-repeat:no-repeat}
  .hero-art::after{display:none}
  .hero-inner{padding-top:62px}
  .hero h1{max-width:580px;font-size:clamp(52px,12vw,76px)}
  .hero-sub{max-width:390px}
  .hero-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:560px;margin-top:235px}
  .hero-points>div{min-height:72px;padding:9px;gap:8px}
  .hero-points p{font-size:11px}
  .hero .point-icon{min-width:28px;height:28px;font-size:17px}
}

/* The home navigation sits on the photograph; the legal pages keep their solid header. */
.home-page .site-header{position:absolute;top:0;left:0;right:0;height:104px;padding-inline:clamp(24px,9vw,180px);gap:clamp(12px,1.6vw,28px);background:transparent;backdrop-filter:none}
.home-page .site-header .tagline{color:#564d58}
.home-page .header-contact{background:#fff}
.home-page .header-contact .pill-arrow{background:#dbc9f5;color:#241b2b}
.home-page .language-switch{background:rgba(255,255,255,.68);border-color:rgba(92,74,99,.2);backdrop-filter:blur(12px)}
.home-page .hero{min-height:100svh}
.home-page .hero-inner{padding:140px clamp(24px,9vw,180px) 55px}
.home-page .hero-points{grid-template-columns:repeat(2,minmax(0,300px));gap:22px 24px;margin-top:48px}
.home-page .hero-points>div{min-height:84px;padding:14px 20px;gap:16px;border:1px solid rgba(255,255,255,.42);border-radius:18px;background:rgba(66,51,78,.76);color:#fff;box-shadow:0 14px 32px rgba(40,31,47,.17);backdrop-filter:blur(18px)}
.home-page .hero-points p{font-size:14px;font-weight:650;line-height:1.35}
.home-page .hero .point-icon{min-width:42px;width:42px;height:42px;background:transparent;color:#fff;font-size:27px}
@media(max-width:1150px){
  .home-page .site-header{height:78px;padding-inline:clamp(20px,5vw,60px)}
  .home-page .hero-inner{padding-inline:clamp(20px,5vw,60px)}
  .home-page .hero-points{grid-template-columns:repeat(2,minmax(0,250px))}
}
@media(max-width:700px){
  .home-page .site-header{height:76px;padding-inline:20px}
  .home-page .hero{min-height:940px}
  .home-page .hero-inner{padding:126px 20px 30px}
  .home-page .hero-points{grid-template-columns:repeat(2,minmax(0,1fr));max-width:560px;gap:9px;margin-top:205px}
  .home-page .hero-points>div{min-height:77px;padding:10px;gap:7px;border-radius:16px}
  .home-page .hero-points p{font-size:11px}
  .home-page .hero .point-icon{min-width:29px;width:29px;height:29px;font-size:19px}
}
.home-page .site-header{gap:clamp(10px,1.2vw,20px)}
.home-page .site-header .tagline{max-width:none;white-space:nowrap}
.home-page .desktop-nav{gap:clamp(13px,1.5vw,22px)}
.home-page .hero-points>div{background:linear-gradient(135deg,rgba(62,47,78,.82),rgba(104,73,116,.66))}

/* Three benefit scenarios: accordion content controls the layered photo stack. */
.benefits{background:linear-gradient(135deg,#fbf8fc 0%,#fff 47%,#faf8f5 100%)}
.benefit-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);gap:clamp(34px,6vw,105px);align-items:center}
.benefit-list{display:flex;flex-direction:column;gap:14px}
.benefit-item,.benefit-item:last-of-type{min-height:96px;grid-template-columns:44px minmax(0,1fr) 26px;column-gap:18px;border:1px solid #e8e1ec;border-radius:27px;padding:23px 26px;background:#fcfafd;transition:background .25s,border-color .25s,box-shadow .25s}
.benefit-item.active{background:#f0e9f8;border-color:#e5d8f4;box-shadow:0 10px 30px rgba(68,52,79,.07)}
.benefit-item>span:first-child{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#eee5f4;color:#5d476e;font-size:13px}
.benefit-item strong{font-size:clamp(19px,1.9vw,27px);letter-spacing:-.035em;line-height:1.12}
.benefit-item .plus{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;font-size:23px;line-height:1}
.benefit-item p{grid-column:2/4;max-height:0;margin:0;color:#5c5362;font-size:14px;line-height:1.55}
.benefit-item.active p{max-height:170px;margin-top:14px}
.benefit-stack{height:610px;margin-right:clamp(50px,6vw,90px);isolation:isolate}
.benefit-visual{display:block;padding:0;border-radius:29px;background:#f0eae3;box-shadow:0 22px 52px rgba(59,49,55,.17);transition:transform .48s cubic-bezier(.2,.7,.2,1),opacity .48s;transform-origin:center center}
.benefit-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.benefit-visual::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(32,29,30,.35));pointer-events:none}
.benefit-visual[data-depth="0"],.benefit-visual.active{z-index:3;transform:translateX(0) scale(1);opacity:1}
.benefit-visual[data-depth="1"]{z-index:2;transform:translateX(44px) scale(.94);opacity:.93}
.benefit-visual[data-depth="2"]{z-index:1;transform:translateX(82px) scale(.88);opacity:.79}
.benefit-card-chip{position:absolute;z-index:2;top:22px;right:22px;max-width:calc(100% - 44px);padding:9px 16px;border-radius:99px;background:rgba(255,255,255,.84);color:#302a30;backdrop-filter:blur(12px);font-size:12px;font-weight:750}
.benefit-card-caption{position:absolute;z-index:2;left:22px;right:22px;bottom:22px;display:flex;align-items:center;gap:13px;min-height:74px;padding:9px 16px 9px 9px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(53,49,52,.66);color:#fff;backdrop-filter:blur(18px);font-size:13px;font-weight:700;line-height:1.35}
.benefit-card-icon{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;background:#fff;color:#27232a}
.benefit-card-icon svg{width:27px;height:27px}
@media(max-width:1150px){.benefit-layout{gap:45px}.benefit-stack{height:520px;margin-right:50px}.benefit-item{padding:19px 20px}}
@media(max-width:700px){
  .benefit-layout{display:block}
  .benefit-list{gap:10px}
  .benefit-item,.benefit-item:last-of-type{display:grid;min-height:76px;padding:15px 17px;grid-template-columns:37px minmax(0,1fr) 25px;column-gap:11px;border-radius:20px}
  .benefit-item>span:first-child{width:36px;height:36px;border-radius:11px;font-size:11px}
  .benefit-item strong{font-size:18px}
  .benefit-item p{grid-column:2/4;font-size:12px}
  .benefit-item.active p{max-height:170px;margin-top:10px}
  .benefit-stack{height:460px;margin:24px 44px 0 0}
  .benefit-visual[data-depth="1"]{transform:translateX(24px) scale(.94)}
  .benefit-visual[data-depth="2"]{transform:translateX(44px) scale(.88)}
  .benefit-card-chip{top:15px;right:15px;font-size:11px;padding:8px 12px}
  .benefit-card-caption{left:13px;right:13px;bottom:14px;min-height:64px;gap:9px;padding:7px 10px 7px 7px;font-size:11px}
  .benefit-card-icon{flex-basis:46px;width:46px;height:46px}
  .benefit-card-icon svg{width:23px;height:23px}
}

/* Business / home scene switch and the alternate office photograph. */
.scene::before{content:"";position:absolute;z-index:1;inset:0;background:#f2eee8 url('/media/smart-office-white-room.png') center center/cover no-repeat;opacity:0;transition:opacity .38s ease;pointer-events:none}
.scene.business-mode::before{opacity:1}
.scene-mode-switch{position:absolute;z-index:6;top:25px;left:26px;display:inline-flex;gap:3px;padding:5px;border:1px solid rgba(255,255,255,.9);border-radius:999px;background:rgba(255,255,255,.87);box-shadow:0 9px 28px rgba(36,28,40,.16);backdrop-filter:blur(16px)}
.scene-mode-switch button{min-height:39px;padding:0 18px;border:0;border-radius:999px;background:transparent;color:#312a37;font-size:13px;font-weight:750;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.scene-mode-switch button[aria-pressed="true"]{background:#292333;color:#fff;box-shadow:0 4px 12px rgba(31,25,38,.18)}
.scene-mode-switch button:hover:not([aria-pressed="true"]){background:#ede8f2}
.scene-mode-switch button:focus-visible{outline:3px solid #8e63c5;outline-offset:2px}
@media(max-width:700px){.scene-mode-switch{top:14px;left:14px;padding:4px}.scene-mode-switch button{min-height:35px;padding:0 13px;font-size:11px}.scene.business-mode::before{background-position:54% center}}
@media(max-width:700px){.scene.business-mode .hotspot:first-child{left:40%!important;top:21%!important}}
@media(max-width:700px){.scene.business-mode .hotspot:nth-child(3){left:70%!important;top:13%!important}.scene.business-mode .hotspot:nth-child(4){left:52%!important;top:64%!important}.scene.business-mode .hotspot:nth-child(7){left:78%!important;top:30%!important}.scene.business-mode .hotspot:nth-child(9){left:88%!important;top:73%!important}}
@media(prefers-reduced-motion:reduce){.scene::before,.scene-mode-switch button{transition:none}}

/* Daylit services photo with readable cards and copy kept in HTML. */
.services{background:#f8f5ef;color:#29242c}
.services-background{background:#f8f5ef url('/media/services-family-light.png') center center/cover no-repeat}
.services-background::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,249,245,.91) 0%,rgba(251,249,245,.67) 32%,rgba(251,249,245,.06) 67%),linear-gradient(0deg,rgba(245,240,234,.44),transparent 48%)}
.services-background::after{display:none}
.services .section-heading.split{display:block}
.services h2{max-width:780px;font-size:clamp(54px,5.7vw,92px);line-height:.98}
.services h2 em{color:#73518d}
.services .kicker.light{color:#68477d}
.services .section-heading.split>p{max-width:610px;margin:16px 0 36px;color:#463d45;font-size:clamp(15px,1.2vw,18px);line-height:1.5}
.service-scroller article{flex:0 0 clamp(210px,18.5vw,250px);min-height:272px;border-color:rgba(255,255,255,.64);background:linear-gradient(135deg,rgba(66,53,77,.82),rgba(83,69,90,.68));color:#fff;box-shadow:0 16px 32px rgba(41,31,44,.13)}
.service-scroller article>span{display:grid;place-items:center;width:80px;height:80px;border-radius:23px;background:#f8f5fc;color:#27212e;font-size:40px;line-height:1}
.service-scroller p{color:#f5f0f7}
.services .light-pill{background:#292333;color:#fff}
.services .light-pill .pill-arrow{background:#e1d0f2;color:#292333}
@media(max-width:700px){
  .services-background{background-color:#f8f5ef;background-size:auto 82%;background-position:84% bottom;background-repeat:no-repeat}
  .services-background::before{background:linear-gradient(180deg,rgba(251,249,245,.98) 0%,rgba(251,249,245,.91) 26%,rgba(251,249,245,.28) 51%,rgba(251,249,245,.08) 73%,rgba(251,249,245,.38) 100%)}
  .services h2{font-size:clamp(49px,11vw,75px)}
  .services .section-heading.split>p{max-width:360px;margin:17px 0 28px -12px;padding:10px 12px;border-radius:14px;background:rgba(251,249,245,.8);backdrop-filter:blur(8px);font-size:15px}
  .service-scroller article{flex-basis:76vw;min-height:260px}
}

/* The services audience switch shares state with the interactive home/office scene. */
.services-mode-row{display:flex;align-items:center;gap:22px;margin-bottom:27px}
.services-mode-row .kicker{margin:0}
.services-mode-switch{display:inline-flex;gap:3px;padding:4px;border:1px solid rgba(91,73,101,.16);border-radius:999px;background:rgba(255,255,255,.85);box-shadow:0 7px 22px rgba(52,39,55,.1);backdrop-filter:blur(14px)}
.services-mode-switch button{min-height:36px;padding:0 15px;border:0;border-radius:999px;background:transparent;color:#312a37;font-size:12px;font-weight:750;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.services-mode-switch button[aria-pressed="true"]{background:#292333;color:#fff}
.services-mode-switch button:hover:not([aria-pressed="true"]){background:#ede8f2}
.services-mode-switch button:focus-visible{outline:3px solid #8e63c5;outline-offset:2px}
.services.business-mode .services-background{background-image:url('/media/services-office-light.png')}
.service-scroller article>span svg{display:block;width:39px;height:39px}
@media(max-width:700px){.services-mode-row{gap:11px;margin-bottom:22px}.services-mode-switch button{min-height:33px;padding:0 12px;font-size:11px}.services.business-mode .services-background{background-position:83% bottom}}
@media(prefers-reduced-motion:reduce){.services-mode-switch button{transition:none}}

/* Keep photographs and controls proportionate on large desktop and fullscreen displays. */
@media(min-width:1500px){
  .concept-grid{min-height:clamp(620px,35vw,860px)}
  .concept-intro{padding:clamp(38px,2.4vw,62px)}
  .concept-intro h3{font-size:clamp(30px,2vw,44px);max-width:560px}
  .concept-intro p{font-size:clamp(17px,1vw,21px);line-height:1.5}
  .concept-intro .pill{font-size:clamp(15px,.85vw,19px);min-height:56px}
  .concept-product{min-height:0}
  .concept-product .product-copy{padding:clamp(38px,2.4vw,62px)}
  .concept-product h3{max-width:460px;font-size:clamp(35px,2.1vw,49px)}
  .concept-product p{max-width:420px;font-size:clamp(17px,.95vw,21px)}
  .story-top-chip{top:30px;left:30px;padding:12px 20px;font-size:16px}
  .story-carousel .pause-button{top:30px;right:30px;padding:11px 16px;font-size:15px}
  .story-info{left:30px;right:30px;bottom:66px;min-height:104px;gap:20px;padding:13px 22px 13px 13px}
  .story-icon{flex-basis:70px;width:70px;height:70px}
  .story-icon svg{width:35px;height:35px}
  .story-info-copy strong{font-size:clamp(19px,1.1vw,25px)}
  .story-info-copy>span:not(.sr-only){font-size:clamp(16px,.9vw,20px)}
  .story-carousel .dots{bottom:29px}
  .story-carousel .dots button{width:12px;height:12px}
  .story-carousel .dots button.active{width:12px}
  .scene{height:clamp(700px,38vw,960px)}
  .device-card{flex-basis:clamp(350px,19vw,470px);min-height:450px}
  .device-card-media{height:230px}
  .device-card-media img{width:215px;height:185px}
  .device-card-title{font-size:clamp(27px,1.6vw,34px)}
  .device-card-description{font-size:17px}
  .benefit-layout{grid-template-columns:minmax(0,1fr) minmax(0,min(43vw,920px));gap:clamp(65px,5vw,145px)}
  .benefit-list{gap:20px}
  .benefit-item,.benefit-item:last-of-type{min-height:125px;padding:30px 34px;grid-template-columns:50px minmax(0,1fr) 32px;column-gap:24px}
  .benefit-item>span:first-child{width:50px;height:50px;font-size:16px}
  .benefit-item strong{font-size:clamp(25px,1.45vw,34px)}
  .benefit-item p{font-size:clamp(16px,.9vw,20px)}
  .benefit-item .plus{width:32px;height:32px}
  .benefit-stack{height:clamp(690px,43vw,900px);margin-right:70px}
  .benefit-card-chip{font-size:16px;padding:12px 20px}
  .benefit-card-caption{min-height:95px;font-size:clamp(16px,.85vw,20px);gap:18px;padding:12px 20px 12px 12px}
  .benefit-card-icon{flex-basis:66px;width:66px;height:66px}
  .benefit-card-icon svg{width:32px;height:32px}
  .services{min-height:clamp(1050px,52vw,1330px)}
  .service-scroller article{flex-basis:clamp(310px,18vw,430px);min-height:350px;padding:30px}
  .service-scroller h3{font-size:clamp(27px,1.55vw,36px)}
  .service-scroller p{font-size:clamp(15px,.85vw,19px)}
}

/* Package selector and pricing cards. */
.pricing{background:radial-gradient(circle at 10% 0%,#eee7f7 0,transparent 34%),linear-gradient(145deg,#faf8fc,#f3f0f7 72%,#f9f7f9);color:#25202d}
.pricing-heading{max-width:1040px;margin:0 auto 43px;text-align:center}
.pricing-heading .kicker{margin-bottom:15px}
.pricing-heading h2{max-width:none;font-size:clamp(49px,5.2vw,92px);line-height:1.02}
.pricing-heading h2 em{color:#8157b1}
.pricing-heading>p:last-child{max-width:730px;margin:20px auto 0;color:#655b6b;font-size:clamp(16px,1.1vw,19px);line-height:1.5}
.price-tabs-scroll{max-width:100%;overflow-x:auto;scrollbar-width:none;margin:0 auto 34px;text-align:center}
.price-tabs-scroll::-webkit-scrollbar{display:none}
.price-tabs{display:inline-flex;width:max-content;max-width:none;gap:5px;padding:6px;border:1px solid #d8cde6;border-radius:999px;background:#eee8f5;box-shadow:0 10px 30px rgba(69,48,91,.07)}
.price-tabs button{min-height:45px;padding:0 clamp(16px,1.7vw,28px);border:0;border-radius:999px;background:transparent;color:#574c62;font-size:clamp(13px,.9vw,16px);font-weight:750;white-space:nowrap;transition:background .25s,color .25s,box-shadow .25s,transform .25s}
.price-tabs button:hover:not([aria-selected="true"]){background:#e3d8ee;color:#30253a}
.price-tabs button[aria-selected="true"]{background:#fff;color:#34253f;box-shadow:0 4px 14px rgba(45,30,60,.14)}
.price-tabs button:active{transform:scale(.97)}
.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.7vw,28px);max-width:1720px;margin:0 auto}
.price-grid.two-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1120px}
.price-card{display:flex;flex-direction:column;min-width:0;min-height:595px;padding:clamp(25px,2vw,38px);border:1px solid #ddd3e6;border-radius:27px;background:rgba(255,255,255,.92);color:#292330;box-shadow:0 14px 36px rgba(56,38,73,.06);transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s ease;animation:price-card-in .4s both;animation-delay:calc(var(--card-index)*65ms)}
@keyframes price-card-in{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.price-card:hover{transform:translateY(-7px);background:#282231;color:#fff;border-color:#282231;box-shadow:0 28px 58px rgba(36,24,51,.2)}}
.price-card:focus-within{background:#282231;color:#fff;border-color:#282231;box-shadow:0 28px 58px rgba(36,24,51,.2)}
.price-card h3{min-height:2.15em;margin:0;font-size:clamp(23px,1.65vw,32px);line-height:1.08;letter-spacing:-.04em}
.price-card-amount{display:flex;align-items:baseline;gap:8px;margin-top:23px;white-space:nowrap}
.price-card-amount span{font-size:15px;font-weight:650;color:#695b71}
.price-card-amount strong{font-size:clamp(37px,3vw,58px);line-height:1;letter-spacing:-.06em}
.price-card-tax{margin:9px 0 18px;color:#725e7e;font-size:clamp(13px,.9vw,16px);font-weight:650}
.price-card-description{min-height:2.8em;margin:0 0 18px;font-size:clamp(15px,1vw,18px);font-weight:700;line-height:1.35}
.price-card-scope{margin:0 0 15px;font-size:13px;font-weight:800}
.price-card-features{display:flex;flex-direction:column;gap:11px;list-style:none;margin:0 0 35px;padding:0}
.price-card-features li{display:flex;align-items:flex-start;gap:11px;color:#6e6375;font-size:clamp(14px,.9vw,16px);line-height:1.35}
.price-card-features li::before{content:'✓';display:grid;place-items:center;flex:0 0 19px;width:19px;height:19px;margin-top:1px;border:1px solid #a68abf;border-radius:50%;color:#745396;font-size:12px;font-weight:800}
.price-select{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;min-height:52px;margin-top:auto;padding:0 17px 0 21px;border:1px solid #a99aaf;border-radius:999px;background:transparent;color:inherit;font-size:14px;font-weight:800;text-align:left;transition:background .2s,color .2s,border-color .2s}
.price-select-arrow{font-size:23px;font-weight:400;line-height:1;transition:transform .25s ease}
.price-select:hover{background:#e8d6f8;border-color:#e8d6f8;color:#271f30}
.price-select:hover .price-select-arrow,.price-card:hover .price-select-arrow,.price-card:focus-within .price-select-arrow{transform:translateX(5px)}
.price-card:hover .price-card-amount span,.price-card:hover .price-card-tax,.price-card:hover .price-card-features li,.price-card:focus-within .price-card-amount span,.price-card:focus-within .price-card-tax,.price-card:focus-within .price-card-features li{color:#ede1f6}
.price-card:hover .price-card-features li::before,.price-card:focus-within .price-card-features li::before{border-color:#e4cff7;color:#e4cff7}
.price-card:hover .price-select,.price-card:focus-within .price-select{border-color:#cbb7d8}
.price-note{max-width:1050px;margin:28px auto 0;color:#6d6173;font-size:14px;line-height:1.55;text-align:center}
.selected-package{padding:14px 18px;margin:0 0 18px;border:1px solid #baa1d1;border-radius:14px;background:#f2eaf8;color:#3e2d53;font-size:14px;font-weight:750}
.selected-package[hidden]{display:none}
@media(min-width:1500px){.price-card{min-height:665px}.price-tabs-scroll{margin-bottom:43px}.price-note{font-size:16px}}
@media(max-width:1000px){.price-grid{gap:13px}.price-card{min-height:610px;padding:23px}.price-card h3{font-size:22px}.price-card-amount strong{font-size:38px}.price-card-features li{font-size:14px}}
@media(max-width:700px){.pricing-heading{margin-bottom:28px}.pricing-heading h2{font-size:clamp(46px,11vw,67px)}.pricing-heading>p:last-child{font-size:15px}.price-tabs-scroll{margin-inline:-20px;padding-inline:20px;text-align:left}.price-tabs{gap:3px;padding:5px}.price-tabs button{min-height:42px;padding:0 15px;font-size:13px}.price-grid,.price-grid.two-cards{grid-template-columns:1fr;gap:17px}.price-card{min-height:0;padding:26px}.price-card h3{min-height:0;font-size:27px}.price-card-amount{margin-top:28px}.price-card-amount strong{font-size:45px}.price-card-description{min-height:0}.price-select{margin-top:24px}.price-note{font-size:13px;text-align:left}}
@media(max-width:380px){.price-card-amount{gap:5px}.price-card-amount span{font-size:12px}.price-card-amount strong{font-size:clamp(32px,10vw,40px)}}
@media(prefers-reduced-motion:reduce){.price-card{animation:none}}

/* Larger, lighter glass cards over the hero photograph. */
.home-page .hero-points{width:min(100%,720px);grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;margin-top:42px}
.home-page .hero-points>div{min-height:104px;padding:18px 22px;gap:17px;border:1px solid rgba(255,255,255,.52);border-radius:20px;background:linear-gradient(135deg,rgba(50,38,64,.60),rgba(92,68,103,.42));box-shadow:0 16px 38px rgba(40,31,47,.15);backdrop-filter:blur(13px)}
.home-page .hero-points p{font-size:clamp(16px,1.25vw,18px);font-weight:700;line-height:1.3;text-shadow:0 1px 5px rgba(27,20,33,.35)}
.home-page .hero .point-icon{min-width:50px;width:50px;height:50px;font-size:32px}
@media(max-width:700px){
  .home-page .hero-points{width:100%;max-width:560px;gap:10px;margin-top:195px}
  .home-page .hero-points>div{min-height:94px;padding:11px 10px;gap:8px;border-radius:17px}
  .home-page .hero-points p{font-size:clamp(13px,3.1vw,15px)}
  .home-page .hero .point-icon{min-width:34px;width:34px;height:34px;font-size:22px}
}

/* Local NunRie assistant: a light lilac floating conversation panel. */
.assistant-widget{position:fixed;right:24px;bottom:24px;z-index:90;font-family:Arial,"Helvetica Neue",sans-serif}
.assistant-launcher{display:flex;align-items:center;gap:17px;min-height:92px;padding:9px 30px 9px 9px;border:1px solid #dcc6f1;border-radius:999px;background:linear-gradient(125deg,#fbf7ff,#e9d8fa);color:#38274e;box-shadow:0 14px 35px rgba(53,31,78,.2);font-size:20px;font-weight:800;transition:transform .22s,box-shadow .22s,background .22s}
.assistant-launcher:hover{transform:translateY(-3px);box-shadow:0 20px 43px rgba(53,31,78,.25)}
.assistant-launcher-mark,.assistant-avatar,.assistant-mini-avatar{display:grid;place-items:center;flex:none;background:linear-gradient(145deg,#a574dc,#7648b6);color:#fff}
.assistant-launcher-mark{width:72px;height:72px;border-radius:50%}
.assistant-launcher-mark svg{width:40px;height:40px}
.assistant-panel{position:absolute;right:0;bottom:calc(100% + 14px);display:flex;flex-direction:column;width:min(460px,calc(100vw - 48px));height:min(680px,calc(100dvh - 144px));min-height:350px;overflow:hidden;border:1px solid #e6d8f2;border-radius:25px;background:#fbf9fd;color:#292134;box-shadow:0 28px 75px rgba(43,27,60,.25);animation:assistant-panel-in .24s ease-out both}
.assistant-panel[hidden]{display:none}
@keyframes assistant-panel-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.assistant-header{display:flex;align-items:center;gap:11px;min-height:85px;padding:15px 18px;border-bottom:1px solid #e8dcf1;background:linear-gradient(115deg,#f6ecff,#eee1fa 75%,#f9f3ff)}
.assistant-avatar{width:50px;height:50px;border-radius:16px;box-shadow:0 6px 15px rgba(120,72,182,.18)}
.assistant-avatar svg{width:30px;height:30px}
.assistant-heading{display:flex;flex-direction:column;gap:2px;min-width:0;margin-right:auto}
.assistant-heading strong{font-size:18px;letter-spacing:-.02em}
.assistant-heading small{color:#746884;font-size:12px}
.assistant-reset,.assistant-close{display:grid;place-items:center;flex:none;width:35px;height:35px;border:1px solid #dfcfec;border-radius:12px;background:#fff8;color:#63467c;font-size:22px;line-height:1;transition:background .2s,transform .2s}
.assistant-reset:hover,.assistant-close:hover{background:#fff;transform:translateY(-2px)}
.assistant-close{font-size:26px}
.assistant-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:14px;padding:20px 16px 16px;scrollbar-color:#cdb5e3 transparent}
.assistant-row{display:flex;align-items:flex-end;gap:8px;max-width:100%}
.assistant-row.user{justify-content:flex-end}
.assistant-mini-avatar{width:28px;height:28px;border-radius:10px}
.assistant-mini-avatar svg{width:19px;height:19px}
.assistant-bubble{max-width:calc(100% - 38px);padding:14px 16px;border:1px solid #e8dff0;border-radius:18px 18px 18px 5px;background:#fff;color:#31283b;box-shadow:0 5px 15px rgba(56,33,74,.05);font-size:15px;line-height:1.46;overflow-wrap:anywhere}
.assistant-bubble p{margin:0;line-height:inherit}
.assistant-row.user .assistant-bubble{border-color:#9264cb;border-radius:18px 18px 5px 18px;background:linear-gradient(135deg,#9b70d3,#7850bb);color:#fff;box-shadow:0 8px 22px rgba(117,72,180,.2)}
.assistant-action{display:inline-flex;align-items:center;margin-top:9px;color:#6e3fa3;font-size:13px;font-weight:800;text-decoration:none}
.assistant-action:hover{text-decoration:underline}
.assistant-typing .assistant-bubble{display:flex;gap:4px;min-height:39px;align-items:center}
.assistant-typing i{width:6px;height:6px;border-radius:50%;background:#aa87c8;animation:assistant-dot 1s infinite ease-in-out}
.assistant-typing i:nth-child(2){animation-delay:.13s}.assistant-typing i:nth-child(3){animation-delay:.26s}
@keyframes assistant-dot{0%,60%,100%{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.assistant-prompts{display:flex;flex-wrap:wrap;gap:7px;padding:0 16px 12px}
.assistant-prompts button{min-height:36px;padding:6px 12px;border:1px solid #d9c3ea;border-radius:999px;background:#f4eafa;color:#624579;font-size:13px;font-weight:700;transition:background .18s,transform .18s}
.assistant-prompts button:hover{background:#e8d8f6;transform:translateY(-2px)}
.assistant-form{display:flex;align-items:center;gap:8px;padding:10px 12px 8px;border-top:1px solid #ede3f3;background:#fff}
.assistant-form input{flex:1;min-width:0;min-height:48px;padding:0 13px;border:1px solid #d9c7e6;border-radius:15px;background:#fbf8fe;color:#2c2237;font-size:15px;outline:none}
.assistant-form input:focus{border-color:#9a72c7;box-shadow:0 0 0 3px #bba0d74d}
.assistant-form input::placeholder{color:#8b7e97}
.assistant-form button{display:grid;place-items:center;flex:none;width:48px;height:48px;border:0;border-radius:14px;background:#8559bc;color:#fff;transition:background .2s,transform .2s}
.assistant-form button:not(:disabled):hover{background:#694199;transform:translateY(-2px)}
.assistant-form button:disabled{opacity:.45}
.assistant-form button svg{width:20px;height:20px}
.assistant-notice{margin:0;padding:0 14px 10px;background:#fff;color:#8a7b94;font-size:10px;line-height:1.3;text-align:center}
@media(max-width:700px){.assistant-widget{right:14px;bottom:14px}.assistant-launcher{min-height:74px;gap:12px;padding:8px 19px 8px 8px;font-size:17px}.assistant-launcher-mark{width:56px;height:56px}.assistant-launcher-mark svg{width:32px;height:32px}.assistant-panel{bottom:calc(100% + 10px);width:min(460px,calc(100vw - 46px));height:min(610px,calc(100dvh - 112px));border-radius:21px}.assistant-messages{padding:17px 13px 13px}.assistant-prompts{padding-inline:13px}}
@media(max-width:360px){.assistant-launcher{gap:9px;padding-right:12px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.assistant-panel,.assistant-typing i{animation:none}}

/* Cookie notice uses the same pale lavender palette as the assistant. */
.cookie-notice{position:fixed;left:24px;bottom:24px;z-index:120;width:min(640px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow-y:auto;padding:30px;border:1px solid #dfd0eb;border-radius:26px;background:#fffcff;color:#30283b;box-shadow:0 24px 65px rgba(45,31,62,.2);font-family:Arial,"Helvetica Neue",sans-serif}
.cookie-notice[hidden]{display:none}
.cookie-notice-heading{display:flex;align-items:center;gap:13px;margin-bottom:14px}
.cookie-notice-heading span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#eee0f9;color:#71499d;font-size:27px}
.cookie-notice h2{margin:0;font-size:27px;letter-spacing:-.03em}
.cookie-notice p{margin:0 0 15px;color:#574e60;font-size:16px;line-height:1.5}
.cookie-notice .cookie-notice-detail{margin-bottom:23px;color:#74687d;font-size:14px}
.cookie-notice-detail a{color:#684398;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.cookie-notice-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cookie-notice-actions button{min-height:60px;padding:13px 20px;border:1px solid #9b78c2;border-radius:16px;background:#eee4f7;color:#4b3464;font-size:17px;font-weight:800;transition:transform .18s,background .18s}
.cookie-notice-actions button[data-choice="accepted"]{background:#8155ad;color:#fff}
.cookie-notice-actions button:hover{transform:translateY(-2px)}
.cookie-notice-actions button[data-choice="rejected"]:hover{background:#e2d3f1}
.cookie-notice-actions button[data-choice="accepted"]:hover{background:#6c409b}
.cookie-notice button:focus-visible,.footer-bottom [data-cookie-settings]:focus-visible{outline:3px solid #a475df;outline-offset:3px}
.footer-bottom [data-cookie-settings]{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;cursor:pointer}
.footer-bottom [data-cookie-settings]:hover{text-decoration-color:currentColor}
@media(max-width:900px){.has-cookie-notice .assistant-widget{visibility:hidden;pointer-events:none}}
@media(max-width:700px){.cookie-notice{left:12px;right:12px;bottom:12px;width:auto;max-height:calc(100dvh - 24px);padding:21px;border-radius:22px}.cookie-notice-heading span{width:39px;height:39px;font-size:24px}.cookie-notice h2{font-size:23px}.cookie-notice p{font-size:14px}.cookie-notice .cookie-notice-detail{font-size:12px}.cookie-notice-actions button{min-height:54px;padding-inline:10px;font-size:15px}}
