/* Shared 2026 experience layer: existing sections and routes remain intact. */
:root{--kk-ink:#292638;--kk-muted:#686575;--kk-paper:#fffcf5;--kk-purple:#7256bc;--kk-line:#e9e3d9}
body.kk-enhanced{background:var(--kk-paper);color:var(--kk-ink)}
.kk-enhanced h1,.kk-enhanced h2,.kk-enhanced h3{letter-spacing:-.04em}
.kk-enhanced h2.font-logo{font-family:'Poppins',sans-serif;font-weight:750;line-height:1.15}
.kk-enhanced :focus-visible{outline:3px solid #7152b4!important;outline-offset:5px}
.kk-skip{position:fixed;left:18px;top:-80px;z-index:10000;background:#fff;padding:14px 22px;border-radius:12px;color:#292638}.kk-skip:focus{top:12px}
.kk-enhanced header.mobile-header{padding:15px 24px!important;background:transparent!important;box-shadow:none!important;}
.kk-enhanced #navbar{max-width:1440px!important;width:100%;border:1px solid #e9e3d9;box-shadow:0 4px 30px #3a294908;border-radius:22px!important;background:#fffdf8ee;backdrop-filter:blur(16px)}
.kk-enhanced #navbar>.flex{min-height:66px}.kk-enhanced #navbar .space-x-8>:not([hidden])~:not([hidden]){margin-left:23px}
.kk-enhanced .group:focus-within>.invisible{visibility:visible!important;opacity:1!important}.kk-enhanced #navbar .group>.absolute:before{content:'';position:absolute;left:0;right:0;height:15px;top:-15px}
.kk-enhanced .btn-primary{background:#7256bc!important;box-shadow:none!important;border-radius:14px!important}.kk-enhanced footer{background:#30293c!important}.kk-enhanced footer>.absolute{opacity:.15}
.kk-enhanced .service-card{border:1px solid #e9e3d9!important;box-shadow:none!important;border-radius:26px!important;transition:transform .25s,border-color .25s!important}
.kk-enhanced .service-card:hover{transform:translateY(-5px)!important;border-color:#b9a6de!important;box-shadow:0 14px 35px #4530570b!important}
.kk-enhanced .service-card .service-description{height:auto!important;max-height:none!important;opacity:1!important;display:block!important}.kk-enhanced .service-card .service-tooltip{display:none!important}
.kk-enhanced .service-card .service-icon{border-radius:20px;box-shadow:none;width:62px;height:62px}.kk-enhanced .service-card:before{display:none}
.kk-enhanced .faq-item{border:1px solid var(--kk-line);background:white;margin-bottom:12px}.kk-enhanced .faq-question{width:100%;text-align:left;background:none;border:0;color:inherit}.kk-enhanced .faq-answer[hidden]{display:none!important}
.kk-enhanced #contact{background:#f0ebf8!important}.kk-enhanced input,.kk-enhanced select,.kk-enhanced textarea{border-radius:12px}
.kk-enhanced [id]{scroll-margin-top:115px}
.kk-hero{position:relative;min-height:820px;padding:152px 0 50px;overflow:hidden;background:var(--kk-paper);isolation:isolate}
.kk-hero:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#baadcf 1px,transparent 1px);background-size:26px 26px;opacity:.19;mask-image:linear-gradient(to right,transparent 25%,black)}
.kk-wrap{width:min(1360px,calc(100% - 96px));margin:auto}
.kk-hero-grid{display:grid;grid-template-columns:1fr 1.07fr;align-items:center;min-height:545px;gap:10px;position:relative}
.kk-eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:11px;font-weight:650;letter-spacing:.17em;margin-bottom:25px}.kk-eyebrow:before{content:'';width:7px;height:7px;border-radius:50%;background:#759d83}
.kk-hero h1{font-family:'Poppins',sans-serif;font-size:clamp(52px,5.55vw,86px);line-height:1.06;font-weight:750;letter-spacing:-.065em;margin:0 0 25px;color:#292638}
.kk-hero h1 em{font-style:normal;color:#8061b6;position:relative}.kk-hero h1 em:after{content:'';position:absolute;bottom:0;left:2%;width:97%;height:8px;background:#efcb83;border-radius:50%;transform:rotate(-2deg);z-index:-1}
.kk-hero-copy>p{font-size:16px;line-height:1.85;max-width:440px;color:#6b6572;margin:0 0 28px}
.kk-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.kk-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:16px 23px;border-radius:14px;background:#7256bc;color:white;font-weight:600;font-size:13px;border:1px solid transparent;transition:transform .2s,box-shadow .2s;text-decoration:none}.kk-button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #7256bc20}.kk-button.secondary{background:transparent;color:#36313e;border-color:#dcd4ce}
.kk-hero-note{display:flex;gap:19px;margin-top:30px;font-size:11px;color:#756d7b;align-items:center}.kk-hero-note span+span{border-left:1px solid #ddd5ce;padding-left:19px}
.kk-world-shell{position:relative;align-self:stretch;min-height:520px}.kk-world-shell:before{content:'';position:absolute;inset:9% 3% 8%;border-radius:50%;background:radial-gradient(ellipse,#eee3f5 0%,#f6eedf77 55%,transparent 70%)}
[data-world]{position:absolute;inset:0}[data-world] canvas{position:absolute;inset:0;width:100%;height:100%;transition:opacity .4s}[data-world] .world-fallback{width:100%;height:100%;object-fit:contain;transition:opacity .3s}.world-ready .world-fallback{opacity:0}
.kk-world-tag{position:absolute;left:3%;bottom:19%;background:#ffffffdf;border:1px solid white;box-shadow:0 10px 25px #53443d0c;border-radius:15px;padding:12px 17px;font-size:11px;transform:rotate(-7deg);pointer-events:none}.kk-world-tag strong{display:block;color:#7558a5;font-size:15px;letter-spacing:-.02em}.kk-world-tag.alt{left:auto;right:0;bottom:auto;top:17%;transform:rotate(8deg);background:#fff4d7}
.kk-world-controls{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;gap:7px;align-items:center;white-space:nowrap}.kk-world-controls button{width:30px;height:30px;border:1px solid #ddd4e0;background:#fffaf4;border-radius:50%;font-size:13px;color:#6a526e}.kk-world-controls button[aria-pressed=true]{outline:2px solid #9675c2;outline-offset:3px}.kk-world-controls small{font-size:10px;color:#88788d;margin-right:10px}
.kk-world-controls [data-world-mood=sun]{background:#ffe6a0}.kk-world-controls [data-world-mood=dream]{background:#bdb7eb}.kk-world-controls [data-world-mood=play]{background:#d6c2f0}
.kk-world-index{position:absolute;right:0;bottom:12%;font-size:10px;letter-spacing:.12em;color:#927f95;writing-mode:vertical-rl}
.kk-paths{display:flex;justify-content:space-between;margin-top:40px;padding:24px 0 0;border-top:1px solid #e5deda;gap:20px;font-size:12px}.kk-paths a{display:flex;gap:12px;align-items:center;transition:color .2s}.kk-paths a:hover{color:#7256bc}.kk-paths b{font-size:19px;color:#a18aaa;font-weight:400}.kk-paths a:last-child{color:#7256bc}
.kk-finder{background:#eee8f6;padding:40px 0}.kk-finder-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:center}.kk-finder h2{font-size:27px;font-weight:650;line-height:1.25;margin-bottom:9px}.kk-finder p{color:#77697e;font-size:13px}.kk-finder-form{display:flex;gap:10px;align-items:end}.kk-finder label{font-size:11px;font-weight:600;display:block;flex:1}.kk-finder select{display:block;margin-top:8px;width:100%;padding:13px 32px 13px 12px;background:#fffcf8;border:1px solid #d6cddd;font:inherit;font-size:12px;min-height:47px}.kk-finder .kk-button{min-height:47px;padding:13px 16px}.kk-finder-result{grid-column:1/-1;margin-top:-24px;padding:20px;border:1px solid #d9cde5;border-radius:15px;background:#fffcf8;display:flex;align-items:center;justify-content:space-between;gap:15px}.kk-finder-result[hidden]{display:none}
.kk-gift-feature{padding:80px 0;background:#fffcf5}.kk-gift-panel{display:grid;grid-template-columns:1fr 1fr;background:#f3dfe3;border-radius:32px;overflow:hidden;min-height:420px;align-items:center}.kk-gift-panel>div{padding:48px}.kk-gift-panel h2{font-size:clamp(32px,3.7vw,55px);font-weight:700;line-height:1.1;margin:18px 0}.kk-gift-panel p{max-width:440px;font-size:14px;line-height:1.8;color:#735d68;margin:20px 0 26px}.kk-gift-panel img{width:100%;max-height:370px;object-fit:contain}.kk-gift-panel .kk-eyebrow:before{background:#b67c8c}.kk-gift-panel .kk-button{background:#46384b}
.kk-service-banner{margin:120px auto 20px;width:min(1100px,calc(100% - 40px));padding:18px 24px;border:1px solid #ded0e8;border-radius:16px;background:#f4ecfa;display:flex;gap:20px;align-items:center;justify-content:space-between;font-size:13px}.kk-service-banner a{font-weight:700;color:#7256bc}.kk-service-banner+section{padding-top:48px!important}
@media(min-width:1100px){.kk-enhanced #services>.container{max-width:1360px}.kk-enhanced section>.container{max-width:1360px}}
@media(max-width:1100px){.kk-enhanced #navbar .hidden.md\:flex{gap:14px}.kk-enhanced #navbar .space-x-8>:not([hidden])~:not([hidden]){margin-left:0}.kk-enhanced #navbar .text-xl{font-size:16px}.kk-wrap{width:calc(100% - 48px)}.kk-hero h1{font-size:61px}.kk-hero-grid{grid-template-columns:1fr 1fr}.kk-world-tag.alt{right:-5px}.kk-world-tag{left:-10px}.kk-finder-inner{gap:25px}.kk-finder-form{flex-wrap:wrap}.kk-paths{gap:10px;flex-wrap:wrap}}
@media(max-width:767px){.kk-enhanced header.mobile-header{padding:10px 12px!important}.kk-enhanced #navbar>.flex{min-height:54px;padding:8px 16px}.kk-enhanced #navbar{border-radius:18px!important}.kk-enhanced #mobile-menu{max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}.kk-hero{padding:117px 0 27px;min-height:0}.kk-wrap{width:calc(100% - 40px)}.kk-hero-grid{display:flex;flex-direction:column;gap:0}.kk-hero-copy{width:100%;position:relative;z-index:2}.kk-eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:20px}.kk-hero h1{font-size:clamp(45px,10.5vw,64px);letter-spacing:-.06em;line-height:1.08;margin-bottom:20px}.kk-hero-copy>p{font-size:14px;line-height:1.8;margin-bottom:23px}.kk-actions{gap:9px}.kk-button{padding:14px 16px;font-size:11px;gap:10px}.kk-hero-note{font-size:9px;gap:12px;margin-top:23px}.kk-hero-note span+span{padding-left:12px}.kk-world-shell{width:100%;min-height:360px;margin-top:8px}.kk-world-tag{font-size:9px;padding:9px 12px;left:0;bottom:20%}.kk-world-tag strong{font-size:12px}.kk-world-tag.alt{right:0;top:18%}.kk-world-index{display:none}.kk-paths{margin-top:27px;display:grid;grid-template-columns:1fr 1fr;gap:18px 10px;font-size:10px}.kk-paths b{font-size:15px}.kk-finder{padding:30px 0}.kk-finder-inner{grid-template-columns:1fr;gap:20px}.kk-finder h2{font-size:25px}.kk-finder-form{display:grid;grid-template-columns:1fr 1fr}.kk-finder-form .kk-button{grid-column:1/-1}.kk-finder-result{margin:0;align-items:start;flex-direction:column}.kk-gift-feature{padding:40px 0}.kk-gift-panel{grid-template-columns:1fr;border-radius:24px}.kk-gift-panel>div{padding:30px 26px 0}.kk-gift-panel>img{max-height:290px}.kk-gift-panel h2{font-size:36px}.kk-service-banner{font-size:11px;margin-top:100px;padding:17px;align-items:start;flex-direction:column;gap:8px}.kk-enhanced .service-card{padding:26px!important}.kk-enhanced footer .text-4xl{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-aos]{opacity:1!important;transform:none!important}}

/* The user's original full-width playground composition, rebuilt in Three.js. */
.kk-playground-hero{height:900px;min-height:850px;position:relative;isolation:isolate;background:linear-gradient(180deg,#d8f0fc 0%,#e9f7f5 62%,#c2e6a7 95%);overflow:hidden}
.playground-canvas{position:absolute;inset:0}.playground-canvas canvas{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.playground-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.playground-ready .playground-fallback{opacity:0}
.kk-playground-copy{position:relative;z-index:2;text-align:center;width:min(710px,calc(100% - 40px));margin:auto;padding-top:220px;pointer-events:none}
.kk-playground-copy .kk-eyebrow{justify-content:center;margin-bottom:19px;color:#627d76}.kk-playground-copy h1{font-family:'Poppins',sans-serif;font-weight:750;font-size:clamp(50px,4.7vw,72px);letter-spacing:-.05em;line-height:1.08;color:#30364d;margin:0 0 22px;text-shadow:0 2px 25px #edfaff}
.kk-playground-copy h1 em{font-style:normal;color:#7772b7}.kk-playground-copy>p{margin:0 auto 22px;max-width:510px;font-size:14px;line-height:1.85;color:#5b7180}.kk-playground-copy .kk-actions{justify-content:center;pointer-events:auto}.kk-playground-copy .kk-button.secondary{background:#f7fcf5b8;border-color:#cadad2}.kk-playground-copy .kk-hero-note{justify-content:center;margin-top:22px;color:#5a7480}.kk-playground-copy .kk-hero-note span+span{border-color:#bcd7d8}
.playground-toolbar{position:absolute;z-index:3;bottom:25px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid #edfff1;background:#fffef1dc;backdrop-filter:blur(10px);border-radius:17px;padding:10px 13px;box-shadow:0 6px 24px #234b2312}.playground-toolbar>span{font-size:10px;margin:0 10px;color:#4c715b}.playground-toolbar button{padding:7px 11px;font-size:10px;border:1px solid #d1ded0;background:#fffef5;border-radius:9px;color:#4c6254;min-height:33px}.playground-toolbar button:hover{background:#eaf2df}.playground-toolbar button[aria-pressed=true]{background:#ddd6ef;color:#675185}.playground-toolbar button:disabled{opacity:.5;cursor:default}.kk-playground-paths .kk-paths{margin-top:0;padding:25px 0;border-top:0}.kk-playground-paths{background:#fffcf5}
@media(min-width:1600px){.kk-playground-hero{height:1000px}.kk-playground-copy{padding-top:205px}.kk-playground-copy h1{font-size:75px}}
@media(max-width:900px) and (min-width:701px){.kk-playground-hero{height:830px;min-height:0}.kk-playground-copy{padding-top:185px;width:600px}.kk-playground-copy h1{font-size:56px}.playground-toolbar>span{display:none}}
@media(max-width:700px){.kk-playground-hero{height:920px;min-height:0}.kk-playground-copy{padding-top:136px;width:calc(100% - 38px)}.kk-playground-copy h1{font-size:clamp(40px,10.7vw,61px);letter-spacing:-.045em;line-height:1.1}.kk-playground-copy>p{font-size:12px;line-height:1.8;max-width:350px}.kk-playground-copy .kk-eyebrow{font-size:8px;letter-spacing:.095em}.kk-playground-copy .kk-hero-note{font-size:8px;gap:12px;margin-top:19px}.playground-canvas{top:auto;height:530px;bottom:0}.playground-fallback{object-fit:cover;object-position:bottom}.playground-toolbar{bottom:18px;padding:9px;gap:6px;width:calc(100% - 28px);flex-wrap:wrap;justify-content:center;white-space:normal;border-radius:15px}.playground-toolbar>span{width:100%;text-align:center;font-size:9px;margin:0 0 2px}.playground-toolbar button{font-size:9px;padding:6px 8px;min-height:32px}.kk-playground-paths .kk-paths{padding:24px 0}.kk-playground-copy .kk-button{font-size:10px}.kk-playground-copy .kk-hero-note span+span{padding-left:12px}}

.kk-playground-copy h1{letter-spacing:-.035em;font-weight:700}.kk-enhanced #navbar .btn-primary{padding:11px 17px;font-size:12px}.kk-playground-copy{padding-top:199px}@media(max-width:700px){.kk-playground-copy{padding-top:134px}}

.kk-playground-hero:not(:has(.playground-ready)) .playground-toolbar{display:none}

.playground-toolbar button{min-height:40px}@media(max-width:700px){.playground-toolbar button{min-height:40px}}
#navbar a.btn-primary[data-translate="nav.contact"],#mobile-menu a.btn-primary[data-translate="nav.contact"]{color:#fff!important}
.kk-playground-hero.is-night .kk-playground-copy h1{color:#fff8f0!important}.kk-playground-hero.is-night .kk-playground-copy h1 span{color:#fff!important}.kk-playground-hero.is-night .kk-playground-copy>p,.kk-playground-hero.is-night .kk-eyebrow,.kk-playground-hero.is-night .kk-trust{color:#e5e9e9!important}

.kk-enhanced header.mobile-header{background:transparent!important;box-shadow:none!important}.kk-enhanced #navbar{box-shadow:none!important;backdrop-filter:none;background:#fffdf8!important}
.kk-playground-copy .kk-hero-note{color:#fff!important;background:#335e46b8;border:1px solid #ffffff38;border-radius:999px;padding:9px 16px;width:fit-content;margin-left:auto;margin-right:auto;text-shadow:0 1px 2px #193c3966}.kk-playground-copy .kk-hero-note span{color:#fff!important}.kk-playground-copy .kk-hero-note span+span{border-color:#ffffff66}

.kk-playground-hero.is-night .kk-playground-copy h1 em{color:#fff!important;-webkit-text-fill-color:#fff!important;background-image:none!important}.kk-playground-hero{height:850px;min-height:800px}@media(max-width:700px){.kk-playground-hero{height:850px;min-height:0}}
