.serviceStudio[hidden]{display:none!important}
.serviceStudio{position:fixed;inset:0;z-index:3300;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;overflow:hidden;isolation:isolate;color:#fff8ed;background:#161612;--accent:#e7a27d;--ink:#271417;--wash:#6e2f3b}
.serviceBackdrop{position:absolute;inset:0;z-index:-2;background:#171410;overflow:hidden}
.serviceBackdrop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;filter:saturate(.76) contrast(1.03) brightness(.52)}
.serviceStudio[data-service="event"] [data-service-image="event"],.serviceStudio[data-service="destination"] [data-service-image="destination"],.serviceStudio[data-service="speaker"] [data-service-image="speaker"]{opacity:1;transform:scale(1)}
.serviceStudio .serviceBackdrop img[data-service-image="event"]{inset:auto;left:18%;bottom:0;width:min(53vw,78vh);height:auto;max-height:91%;object-fit:contain;filter:saturate(.78) contrast(1.03) brightness(1);mask-image:radial-gradient(ellipse 46% 42% at 50% 73%,#000 38%,transparent 100%)}
.serviceBackdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,13,12,.96),rgba(16,13,12,.78) 42%,rgba(16,13,12,.18) 77%),linear-gradient(0deg,rgba(12,10,9,.8),transparent 43%,rgba(12,10,9,.25));transition:background .7s}
.serviceStudio[data-service="event"] .serviceBackdrop:after{background:linear-gradient(90deg,rgba(16,13,12,.69),rgba(16,13,12,.79) 43%,rgba(16,13,12,.36) 80%),linear-gradient(0deg,rgba(12,10,9,.69),transparent 53%,rgba(12,10,9,.25))}
.serviceStudio[data-service="destination"]{--accent:#ddc79c;--ink:#17272a;--wash:#38585b}
.serviceStudio[data-service="destination"] .serviceBackdrop img{filter:saturate(.7) brightness(.64)}
.serviceStudio .serviceBackdrop img[data-service-image="destination"]{inset:auto;top:19%;left:39%;width:min(44vw,74vh);height:auto;max-height:none;object-fit:contain;filter:saturate(.72) brightness(.9);mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 73%,transparent),linear-gradient(to right,transparent,#000 16%,#000 84%,transparent);mask-composite:intersect}
.serviceStudio[data-service="destination"] .serviceBackdrop:after{background:linear-gradient(90deg,rgba(17,29,30,.9),rgba(17,29,30,.57) 44%,rgba(17,29,30,.18) 80%),linear-gradient(0deg,rgba(12,23,24,.68),transparent 48%)}
.serviceStudio[data-service="speaker"]{--accent:#e7c1ce;--ink:#241921;--wash:#684054}
.serviceStudio[data-service="speaker"] .serviceBackdrop img{filter:saturate(.72) sepia(.08) brightness(.72)}
.serviceStudio .serviceBackdrop img[data-service-image="speaker"]{inset:auto;right:-3%;bottom:-10%;width:min(43vw,72vh);height:auto;max-height:none;object-fit:contain;filter:saturate(.72) sepia(.08) brightness(.72);mask-image:radial-gradient(ellipse 49% 54% at 53% 51%,#000 17%,#000b 45%,transparent 100%),linear-gradient(to bottom,transparent,#000 24%,#000 72%,transparent);mask-composite:intersect}
.serviceStudio[data-service="speaker"] .serviceBackdrop:after{background:linear-gradient(90deg,rgba(22,13,20,.97),rgba(22,13,20,.72) 44%,rgba(22,13,20,.18) 76%,rgba(22,13,20,.28)),linear-gradient(0deg,rgba(22,13,20,.62),transparent 45%)}
.serviceStudio::after{display:none}
.serviceBackdrop img{transition:opacity .7s ease,filter .7s ease}
.serviceStudio.is-switching .serviceBackdrop img{opacity:0!important}
.serviceBody{transition:opacity .35s ease,transform .35s ease}
.serviceStudio.is-switching .serviceBody{opacity:.58;transform:translateY(5px)}
.serviceStudio[data-service="speaker"] .serviceCanvas{background:transparent;backdrop-filter:none}
.serviceHeader{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:14px clamp(20px,4vw,64px);border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,transparent);font:700 9px/1.3 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.serviceHeader>span{text-align:center;color:#f1dfcb;white-space:nowrap}.serviceHeaderActions{justify-self:end;display:flex;align-items:center;gap:8px}
.serviceHeader button{min-height:42px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--accent) 70%,transparent);background:rgba(18,16,14,.64);color:#fff8ec;font:inherit;letter-spacing:.11em;cursor:pointer;backdrop-filter:blur(10px)}
.serviceRooms{position:absolute;z-index:3;right:clamp(20px,4vw,64px);top:86px;display:grid;width:min(245px,24vw);border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);background:rgba(18,15,14,.68);backdrop-filter:blur(13px)}
.serviceRooms button{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;min-height:53px;padding:9px 12px;border:0;border-bottom:1px solid color-mix(in srgb,var(--accent) 25%,transparent);background:transparent;color:#eaddcf;text-align:left;cursor:pointer}
.serviceRooms button:last-child{border-bottom:0}.serviceRooms button[aria-pressed="true"]{background:color-mix(in srgb,var(--wash) 62%,transparent);color:#fff}.serviceRooms small{color:var(--accent);font:700 8px Arial,sans-serif;letter-spacing:.12em}.serviceRooms span{font:400 15px/1.1 Georgia,serif}
.serviceBody{display:grid;grid-template-columns:minmax(290px,470px) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,86px);min-height:0;padding:42px clamp(30px,6vw,90px) 26px}
.serviceCopy{align-self:center;max-width:470px}.serviceCopy>span{color:var(--accent);font:700 10px/1.4 Arial,sans-serif;letter-spacing:.22em}.serviceCopy h2{margin:13px 0 15px;font:italic 400 clamp(49px,6.2vw,92px)/.9 Georgia,serif;letter-spacing:-.055em;text-wrap:balance;text-shadow:0 5px 28px #000}.serviceCopy>p{max-width:42ch;margin:0;color:#efe2d4;font:16px/1.53 Georgia,serif;text-shadow:0 2px 10px #000}
.serviceBeatCopy{min-height:148px;margin-top:25px;padding:19px 0 0;border-top:1px solid color-mix(in srgb,var(--accent) 48%,transparent)}.serviceBeatCopy small{color:var(--accent);font:700 9px Arial,sans-serif;letter-spacing:.16em}.serviceBeatCopy h3{margin:7px 0 7px;font:400 29px/1.04 Georgia,serif}.serviceBeatCopy p{max-width:48ch;margin:0;color:#ded1c3;font:14px/1.48 Georgia,serif}
.serviceCtas{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.serviceCtas a{display:inline-flex;align-items:center;min-height:42px;padding:9px 13px;border:1px solid color-mix(in srgb,var(--accent) 70%,transparent);color:#fff5e8;text-decoration:none;font:700 9px/1.2 Arial,sans-serif;letter-spacing:.12em}.serviceCtas a:first-child{background:var(--accent);color:var(--ink)}
.serviceCanvas{position:relative;align-self:center;justify-self:end;width:min(100%,700px);aspect-ratio:1.48;overflow:visible;border:0;box-shadow:none;background:transparent;backdrop-filter:none;filter:drop-shadow(0 3px 18px rgba(0,0,0,.45))}
.serviceCanvasCaption{position:absolute;z-index:4;left:10%;bottom:8%;display:grid;gap:8px;text-shadow:0 3px 16px #000}.serviceCanvasCaption small{color:var(--accent);font:700 9px Arial,sans-serif;letter-spacing:.18em}.serviceCanvasCaption strong{font:italic 400 clamp(23px,2.5vw,34px)/1 Georgia,serif;letter-spacing:-.045em}
.serviceEventGather{position:absolute;inset:5% 6% 20%;width:88%;height:75%;overflow:visible;opacity:.88}.serviceEventGather path{fill:none;stroke:color-mix(in srgb,var(--accent) 42%,transparent);stroke-width:1.5;stroke-linecap:round;transition:stroke .55s,stroke-width .55s}.serviceEventGather circle{fill:var(--accent);opacity:.55;transition:opacity .55s,r .55s;filter:drop-shadow(0 0 7px var(--accent))}.serviceEventGather .serviceGatherHeart{fill:transparent;stroke:var(--accent);stroke-width:1.5;opacity:.8}
.serviceStudio[data-beat="1"] .serviceEventGather path:first-child,.serviceStudio[data-beat="2"] .serviceEventGather path:nth-child(2),.serviceStudio[data-beat="3"] .serviceEventGather path:nth-child(3){stroke:var(--accent);stroke-width:2.6}.serviceStudio[data-beat="1"] .serviceEventGather circle:nth-of-type(1),.serviceStudio[data-beat="2"] .serviceEventGather circle:nth-of-type(2),.serviceStudio[data-beat="3"] .serviceEventGather circle:nth-of-type(3){opacity:1;r:8}
.serviceVisualNext{position:absolute;z-index:5;right:8%;top:15%;padding:7px 2px;border:0;border-bottom:1px solid color-mix(in srgb,var(--accent) 75%,transparent);background:transparent;color:#fff3df;font:700 9px/1.3 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 2px 8px #000;cursor:pointer;transition:color .3s,transform .3s}.serviceVisualNext:hover{color:var(--accent);transform:translateX(4px)}
.serviceStudio[data-service="destination"] .serviceVisualNext::after{content:attr(data-route-hint);position:absolute;top:calc(100% + 7px);right:0;display:block;width:max-content;max-width:min(60vw,250px);color:#e5d3b0;font:500 8px/1.35 Arial,sans-serif;letter-spacing:.1em;text-align:right;white-space:normal;opacity:.72;pointer-events:none}
.serviceStudio[data-service="speaker"] .serviceVisualNext{right:auto;left:9%}
.serviceDestinationRoute{display:none;position:absolute;inset:8% 6% 20%;width:88%;height:72%;overflow:visible}.serviceDestinationRoute path{fill:none;stroke:color-mix(in srgb,var(--accent) 70%,transparent);stroke-width:1.7;stroke-dasharray:3 7}.serviceDestinationRoute .serviceRouteInk{stroke:#f4dfb3;stroke-width:2;stroke-linecap:round;opacity:.9;filter:drop-shadow(0 0 5px #f1d59d);pointer-events:none}.serviceDestinationRoute circle:not(#serviceRouteMarker):not(.serviceRouteHit){fill:#20393b;stroke:var(--accent);stroke-width:2;transform-box:fill-box;transform-origin:center;transition:fill .45s,filter .45s}.serviceDestinationRoute circle.is-lit:not(#serviceRouteMarker){fill:#f4dfb3;filter:drop-shadow(0 0 7px #f1d59d)}.serviceDestinationRoute #serviceRouteMarker{fill:#fff4d5;stroke:#20393b;stroke-width:3;filter:drop-shadow(0 0 9px var(--accent)) drop-shadow(0 0 15px #f4dfb3);pointer-events:none}.serviceDestinationRoute .serviceRouteHit{fill:transparent;stroke:none;cursor:grab;touch-action:none}.serviceStudio.route-dragging .serviceRouteHit{cursor:grabbing}
.serviceSpeakerEcho{display:none;position:absolute;inset:6% 8% 19%;place-items:center}.serviceSpeakerEcho i{position:absolute;border:1px solid color-mix(in srgb,var(--accent) 47%,transparent);border-radius:50%;animation:serviceEcho 5s ease-in-out infinite}.serviceSpeakerEcho i:first-child{width:22%;aspect-ratio:1}.serviceSpeakerEcho i:nth-child(2){width:43%;aspect-ratio:1;animation-delay:-1.5s}.serviceSpeakerEcho i:nth-child(3){width:66%;aspect-ratio:1;animation-delay:-3s}.serviceSpeakerEcho span{width:11px;height:11px;border-radius:50%;background:var(--accent);box-shadow:0 0 20px var(--accent)}
.serviceEventGather,.serviceDestinationRoute,.serviceSpeakerEcho{display:none!important}
@keyframes serviceEcho{0%,100%{transform:scale(.94);opacity:.28}50%{transform:scale(1.04);opacity:.72}}
.serviceBeats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 clamp(30px,6vw,90px);border-top:1px solid color-mix(in srgb,var(--accent) 42%,transparent);border-bottom:1px solid color-mix(in srgb,var(--accent) 42%,transparent)}
.serviceBeats button{min-height:58px;padding:10px 13px;border:0;border-right:1px solid color-mix(in srgb,var(--accent) 28%,transparent);background:rgba(13,12,11,.45);color:#ded3c5;text-align:left;cursor:pointer;font:700 9px/1.25 Arial,sans-serif;letter-spacing:.12em}.serviceBeats button:last-child{border-right:0}.serviceBeats button[aria-pressed="true"]{background:color-mix(in srgb,var(--wash) 72%,transparent);color:#fff}.serviceBeats b{display:block;margin-top:4px;color:var(--accent);font:400 17px/1.05 Georgia,serif;letter-spacing:0}
.serviceFooter{display:flex;justify-content:space-between;gap:20px;padding:12px clamp(30px,6vw,90px) 15px;color:#d4c7b8;font:700 8px/1.4 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.serviceStudio :is(button,a):focus-visible{outline:3px solid #fff1cf;outline-offset:3px}

/* The Moment in Motion — one physical gesture carried through all three rooms. */
.serviceMoment{position:absolute;inset:0;z-index:2;pointer-events:none;--moment-x:72%;--moment-y:49%;--moment-size:clamp(112px,13vw,190px)}
.serviceMoment.is-final{z-index:100}
.serviceMomentOrb{position:absolute;left:var(--moment-x);top:var(--moment-y);width:var(--moment-size);aspect-ratio:1;translate:-50% -50%;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;pointer-events:auto;cursor:pointer;touch-action:none;transition:left 1.3s cubic-bezier(.45,0,.2,1),top 1.3s cubic-bezier(.45,0,.2,1),width 1.3s cubic-bezier(.45,0,.2,1),transform 1.25s cubic-bezier(.45,0,.2,1),opacity .35s;filter:drop-shadow(0 12px 28px rgba(0,0,0,.38))}
.serviceMomentGlass{position:absolute;inset:0;border-radius:inherit;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 66%,transparent);background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.58) 0 2%,rgba(255,255,255,.1) 7%,transparent 19%),radial-gradient(circle at 48% 48%,transparent 0 39%,rgba(255,255,255,.1) 66%,rgba(255,255,255,.28) 100%),color-mix(in srgb,var(--wash) 28%,rgba(8,7,9,.28));box-shadow:inset 0 0 0 1px rgba(255,255,255,.07),inset -18px -25px 45px rgba(0,0,0,.22),0 0 38px color-mix(in srgb,var(--accent) 24%,transparent);backdrop-filter:blur(2px) saturate(1.32);transition:background .7s,border-color .7s,box-shadow .7s,backdrop-filter .7s}
.serviceMomentGlass:before{content:"";position:absolute;inset:9%;border-radius:50%;border:1px solid rgba(255,255,255,.19);clip-path:polygon(0 0,62% 0,29% 55%,0 78%);transform:rotate(-18deg)}
.serviceMomentGlass i{position:absolute;width:10px;height:10px;border-radius:50%;background:#fff4d0;box-shadow:0 0 13px 5px color-mix(in srgb,var(--accent) 62%,transparent);opacity:.25;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .5s}
.serviceMomentGlass i:first-child{left:26%;top:34%}.serviceMomentGlass i:nth-child(2){left:63%;top:22%}.serviceMomentGlass i:nth-child(3){left:57%;top:67%}
.serviceMomentHint{position:absolute;left:50%;top:calc(100% + 15px);translate:-50% 0;width:max-content;max-width:230px;color:#fff6e7;font:700 9px/1.35 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 2px 12px #000;text-align:center;transition:opacity .3s,transform .3s}
.serviceMomentOrb:hover .serviceMomentHint,.serviceMomentOrb:focus-visible .serviceMomentHint{color:var(--accent);transform:translateY(3px)}
.serviceMomentWords{position:absolute;inset:0;pointer-events:none}
.serviceMomentWords span{position:absolute;left:var(--moment-x);top:var(--moment-y);translate:-50% -50%;color:#fff6e8;font:italic 400 clamp(18px,1.8vw,29px)/1 Georgia,serif;text-shadow:0 3px 16px #000;opacity:0;transition:opacity .5s,scale .75s cubic-bezier(.2,.82,.18,1);scale:.86}
.serviceMomentWords span:first-child{transform:translate(-105px,-72px)}.serviceMomentWords span:nth-child(2){transform:translate(108px,-28px)}.serviceMomentWords span:nth-child(3){transform:translate(15px,105px)}
.serviceStudio[data-beat="1"] .serviceMomentWords span:first-child,.serviceStudio[data-beat="2"] .serviceMomentWords span:nth-child(-n+2),.serviceStudio[data-beat="3"] .serviceMomentWords span{opacity:.92;scale:1}
.serviceStudio[data-service="event"] .serviceMomentOrb{mix-blend-mode:screen}
.serviceStudio[data-service="event"] .serviceMomentGlass{background:radial-gradient(circle at 45% 43%,rgba(209,233,255,.84) 0 2%,rgba(142,193,255,.18) 5%,transparent 11%),radial-gradient(circle at 54% 54%,rgba(32,4,38,.05),rgba(11,6,20,.34) 56%,rgba(230,56,246,.14) 77%,rgba(255,255,255,.2));border-color:rgba(242,166,255,.44);backdrop-filter:saturate(1.28) brightness(1.03)}
.serviceStudio[data-service="event"] .serviceMomentHint{top:74%;color:#fff7eb}
.serviceStudio[data-service="event"] .serviceMomentWords,.serviceStudio[data-service="destination"] .serviceMomentWords{display:none}
.serviceStudio[data-service="event"][data-beat="2"] .serviceMomentGlass i{opacity:.68}.serviceStudio[data-service="event"][data-beat="3"] .serviceMomentGlass i{opacity:1;transform:scale(1.45)}
.serviceStudio[data-service="destination"] .serviceMomentOrb{cursor:grab}.serviceStudio[data-service="destination"] .serviceMomentOrb:active{cursor:grabbing}
.serviceStudio[data-service="destination"] .serviceMomentGlass{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.48),transparent 16%),rgba(191,215,205,.08);border-color:rgba(244,224,185,.7);box-shadow:inset 0 0 36px rgba(255,255,255,.12),0 0 0 10px rgba(222,199,156,.035),0 18px 48px rgba(0,0,0,.3);backdrop-filter:blur(1.4px) saturate(1.38) contrast(1.06)}
.serviceStudio[data-service="destination"] .serviceMomentGlass:after{content:"";position:absolute;inset:21%;border-radius:50%;border:1px solid rgba(255,245,219,.54);box-shadow:0 0 0 12px rgba(255,255,255,.025)}
.serviceStudio[data-service="destination"] .serviceMomentWords span{font-size:clamp(17px,1.6vw,25px)}
.serviceStudio[data-service="speaker"] .serviceMomentOrb{}
.serviceStudio[data-service="speaker"] .serviceMomentGlass{border:0;background:radial-gradient(circle,#fff9d8 0 5%,#ffd690 7%,rgba(250,188,136,.76) 13%,rgba(231,157,184,.25) 31%,transparent 68%);box-shadow:none;backdrop-filter:none;animation:serviceFlame 2.8s ease-in-out infinite}
.serviceStudio[data-service="speaker"] .serviceMomentGlass:before,.serviceStudio[data-service="speaker"] .serviceMomentGlass i{display:none}
.serviceStudio[data-service="speaker"] .serviceMomentHint{top:calc(100% + 6px)}
.serviceStudio[data-service="speaker"] .serviceMomentWords span{opacity:0!important;scale:.86}
.serviceStudio.is-holding .serviceBackdrop:after{background:rgba(14,8,13,.83)}
.serviceStudio.is-holding .serviceBackdrop img[data-service-image="speaker"]{filter:saturate(.8) sepia(.06) brightness(.92);opacity:1;filter:drop-shadow(0 0 34px rgba(255,222,188,.25))}
.serviceStudio.is-holding .serviceMomentWords span{opacity:1!important;scale:1}
.serviceMomentOrb.is-portal{z-index:40;transform:scale(var(--portal-scale,14));transition:transform 1.25s cubic-bezier(.45,0,.2,1)}
.serviceMomentOrb.is-portal .serviceMomentHint,.serviceMomentOrb.is-portal+.serviceMomentWords{opacity:0}
.serviceMomentOrb.is-portal .serviceMomentGlass{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.5),transparent 12%),color-mix(in srgb,var(--wash) 58%,rgba(17,14,16,.94));border-color:rgba(255,246,225,.52);backdrop-filter:blur(15px) saturate(1.35)}
.serviceMomentFinal{position:absolute;inset:0;z-index:60;display:grid;place-content:center;justify-items:center;gap:10px;background:rgba(15,11,12,.76);backdrop-filter:blur(16px);pointer-events:auto;text-align:center;animation:serviceFinalIn .7s ease both}
.serviceMomentFinal[hidden]{display:none}.serviceMomentFinal>span{color:var(--accent);font:700 9px Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase}.serviceMomentFinal img{width:min(390px,62vw);height:150px;object-fit:cover;object-position:center;filter:brightness(0) invert(90%) sepia(20%) saturate(500%) hue-rotate(350deg) drop-shadow(0 4px 18px #000)}.serviceMomentFinal strong{font:italic 400 clamp(28px,4vw,54px)/1 Georgia,serif}
@keyframes serviceFlame{0%,100%{transform:scale(.94);opacity:.78}50%{transform:scale(1.08);opacity:1}}
@keyframes serviceFinalIn{from{opacity:0;clip-path:circle(2% at var(--moment-x) var(--moment-y))}to{opacity:1;clip-path:circle(75% at 50% 50%)}}
@media(min-width:801px) and (max-height:760px){.serviceRooms{top:74px}.serviceBody{padding-top:24px;padding-bottom:16px}.serviceCopy h2{margin:9px 0 11px;font-size:clamp(43px,4.8vw,70px)}.serviceCopy>p{font-size:14px;line-height:1.42}.serviceBeatCopy{min-height:116px;margin-top:15px;padding-top:13px}.serviceBeatCopy h3{font-size:25px}.serviceCtas{margin-top:11px}.serviceCanvas{align-self:end;width:min(100%,calc(52vh * 1.36));max-height:none}.serviceBeats button{min-height:50px}.serviceFooter{padding-top:8px;padding-bottom:9px}}
@media(max-width:800px){.serviceStudio{display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain}.serviceHeader{position:sticky;top:0;z-index:9;grid-template-columns:1fr auto;padding:10px 14px;gap:7px;background:rgba(17,14,13,.88);backdrop-filter:blur(14px)}.serviceHeader>span{display:none}.serviceHeader button{min-height:40px;padding:7px 9px;font-size:8px}.serviceRooms{position:relative;inset:auto;flex:0 0 auto;width:auto;margin:12px 14px 0;grid-template-columns:repeat(3,minmax(0,1fr))}.serviceRooms button{grid-template-columns:1fr;gap:3px;min-height:58px;text-align:center;padding:7px 4px}.serviceRooms span{font-size:13px}.serviceBody{display:flex;flex:0 0 auto;min-height:auto;flex-direction:column;align-items:stretch;gap:12px;padding:17px 19px 20px}.serviceCopy{flex:0 0 auto;max-width:none}.serviceCopy h2{font-size:clamp(40px,11.5vw,56px);line-height:.94}.serviceCopy>p{font-size:15px}.serviceBeatCopy{min-height:0}.serviceCanvas{order:-1;flex:0 0 auto;width:100%;aspect-ratio:1.65}.serviceCanvasCaption{left:8%;bottom:3%}.serviceCanvasCaption strong{font-size:24px}.serviceVisualNext{top:4%;right:4%}.serviceBeats{flex:0 0 auto;margin:0 18px;grid-template-columns:1fr}.serviceBeats button{min-height:52px;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.serviceBeats button:last-child{border-bottom:0}.serviceFooter{flex:0 0 auto;padding:11px 18px calc(15px + env(safe-area-inset-bottom));font-size:7px}.serviceFooter span:first-child{max-width:70%}}
@media(max-width:800px){.serviceStudio[data-service="destination"] .serviceBackdrop img[data-service-image="destination"]{top:140px;left:13%;width:82%;max-height:none;transform:none;opacity:.45}}
@media(max-width:800px){.serviceStudio[data-service="event"] .serviceBackdrop img[data-service-image="event"]{left:-12%;bottom:auto;top:145px;width:90%;max-height:none;opacity:.24}.serviceStudio[data-service="speaker"] .serviceBackdrop img[data-service-image="speaker"]{right:-6%;bottom:auto;top:178px;width:82%;max-height:none;opacity:.5}}
@media(max-width:800px){.serviceStudio[data-service="event"] .serviceBackdrop img[data-service-image="event"]{top:-25px;opacity:.28;mask-image:radial-gradient(ellipse 65% 43% at 50% 55%,#000 16%,transparent 100%)}}
@media(max-width:800px){.serviceStudio[data-service="speaker"] .serviceVisualNext{left:auto;right:4%}}
@media(max-width:800px){.serviceMoment{z-index:4}.serviceMomentOrb{}.serviceMomentHint{max-width:160px;font-size:7px;letter-spacing:.1em}.serviceMomentWords span{font-size:16px}.serviceMomentWords span:first-child{transform:translate(-58px,-44px)}.serviceMomentWords span:nth-child(2){transform:translate(58px,-27px)}.serviceMomentWords span:nth-child(3){transform:translate(4px,65px)}.serviceStudio[data-service="speaker"] .serviceMomentOrb{}.serviceMomentFinal img{height:116px}}
@media(prefers-reduced-motion:reduce){.serviceBackdrop img,.serviceBody,.serviceDestinationRoute circle,.serviceEventGather path,.serviceVisualNext,.serviceStudio::after,.serviceMomentOrb,.serviceMomentWords span{transition:none}.serviceSpeakerEcho i,.serviceStudio[data-service="speaker"] .serviceMomentGlass{animation:none}.serviceMomentOrb.is-portal{transform:none}.serviceMomentFinal{animation:none}}

/* Clear, portrait-safe interaction pockets. */
.serviceVisualNext,.serviceMomentWords{display:none!important}
.serviceMoment .serviceCanvasCaption{left:var(--caption-x);top:var(--caption-y);bottom:auto;translate:-50% -50%;width:min(32vw,480px);text-align:center;gap:14px}
.serviceMoment .serviceCanvasCaption strong{font-size:clamp(38px,4.3vw,72px);line-height:1.08;letter-spacing:-.04em;overflow-wrap:normal}
.serviceMoment .serviceCanvasCaption small{font-size:9px;line-height:1.5;letter-spacing:.15em}
.serviceStudio[data-service="destination"] .serviceCanvasCaption{width:23vw}
.serviceStudio[data-service="speaker"] .serviceCanvasCaption strong{font-size:clamp(32px,3.6vw,60px)}
.serviceMomentReward{position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.serviceMomentReward i{position:absolute;left:50%;top:50%;width:3px;height:3px;margin:-1.5px;border-radius:50%;background:#fff5db;box-shadow:0 0 7px 2px var(--accent);pointer-events:none}
@media(max-width:800px){
 .serviceStudio[data-service="event"] .serviceBackdrop img[data-service-image="event"]{top:55px;left:-9%;width:80%}
 .serviceStudio[data-service="destination"] .serviceBackdrop img[data-service-image="destination"]{left:34%;width:66%}
 .serviceStudio[data-service="speaker"] .serviceBackdrop img[data-service-image="speaker"]{right:-15%;width:72%;top:150px}
 .serviceMoment .serviceCanvasCaption{width:calc(100% - 38px);gap:7px}
 .serviceStudio[data-service="event"] .serviceCanvasCaption{width:46%;}
 .serviceMoment .serviceCanvasCaption strong,.serviceStudio[data-service="speaker"] .serviceCanvasCaption strong{font-size:clamp(28px,8vw,38px)}
 .serviceMoment .serviceCanvasCaption small{font-size:7px;letter-spacing:.1em}
}

.serviceStudio.is-placing .serviceMomentOrb{transition:none}
@media(min-width:801px) and (max-width:1450px){
 .serviceStudio[data-service="event"] .serviceCopy{max-width:var(--event-copy-width,310px)}
 .serviceStudio[data-service="event"] .serviceCopy h2{font-size:clamp(38px,4vw,58px)}
}

@media(max-width:800px){
 .serviceStudio[data-service="destination"] .serviceCanvasCaption{width:calc(100% - 38px)}
 .serviceStudio[data-service="event"] .serviceBackdrop img[data-service-image="event"]{opacity:.65}
}

/* A circle becomes a compass, a heart, and finally one continuous connection. */
.serviceMomentSymbol{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0;transition:opacity 1.2s ease;filter:drop-shadow(0 0 5px var(--accent))}
.serviceMomentSymbol path{fill:none;stroke:#fff0d8;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.serviceStudio[data-beat="3"] .serviceMomentSymbol{opacity:.9}
.serviceStudio[data-beat="3"]:not([data-service="event"]) .serviceMomentGlass{border-color:transparent;box-shadow:none;background:radial-gradient(circle,rgba(255,224,180,.14),transparent 60%);backdrop-filter:none;animation:none}
.serviceStudio[data-beat="3"] .serviceMomentGlass:before,.serviceStudio[data-beat="3"] .serviceMomentGlass:after,.serviceStudio[data-beat="3"] .serviceMomentGlass i{opacity:0}
.serviceMomentOrb.is-portal .serviceMomentSymbol{opacity:0}
.serviceInfinity{display:block;width:min(300px,64vw);padding:0;border:0;background:transparent;color:#fff1dc;cursor:pointer;pointer-events:auto}
.serviceInfinity svg{display:block;width:100%;height:auto;overflow:visible}
.serviceInfinity path{fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;filter:drop-shadow(0 0 5px #e1b68a66)}
.serviceInfinity circle{fill:#fff9e7;filter:drop-shadow(0 0 4px #ffce96)}
.serviceMomentFinal>img,.serviceMomentFinal>strong{opacity:0;transform:translateY(8px);transition:opacity 1.4s ease,transform 1.4s ease}
.serviceMomentFinal.is-settled>img,.serviceMomentFinal.is-settled>strong{opacity:1;transform:none}
.serviceFinalExplore{margin-top:22px;padding:12px 16px;border:1px solid #e7c1ce77;background:transparent;color:#fff1dc;font:700 9px/1.4 Arial,sans-serif;letter-spacing:.13em;cursor:pointer}
.serviceMomentFinal{gap:8px;animation-duration:1.2s}
@media(prefers-reduced-motion:reduce){.serviceMomentSymbol,.serviceMomentFinal>img,.serviceMomentFinal>strong{transition:none}.serviceMomentFinal>img,.serviceMomentFinal>strong{opacity:1;transform:none}}

.serviceMomentSymbol circle{fill:none;stroke:#fff0d8;stroke-width:.65;opacity:0;transition:opacity 1.8s ease}
.serviceStudio[data-service="destination"][data-beat="3"] .serviceMomentSymbol circle{opacity:.65}
@media(prefers-reduced-motion:reduce){.serviceMomentSymbol circle{transition:none}}

.serviceMomentFinal{position:fixed;padding:24px;outline:none}
.serviceInfinity{border-radius:50%}
.serviceStudio:has(.serviceMoment.is-final) .siteGuideTrigger{visibility:hidden}
.serviceBalloonThread{position:absolute;pointer-events:none;overflow:visible;opacity:0;transition:opacity .7s ease}
.serviceBalloonThread path{fill:none;stroke:#f4dcb0;stroke-width:1;vector-effect:non-scaling-stroke;stroke-linecap:round;filter:drop-shadow(0 0 3px #efc383aa)}
.serviceStudio[data-service="event"] .serviceBalloonThread{opacity:.8}
.serviceStudio.is-switching .serviceBalloonThread,.serviceMoment:has(.is-portal) .serviceBalloonThread,.serviceMoment.is-final .serviceBalloonThread{opacity:0}
@media(prefers-reduced-motion:reduce){.serviceBalloonThread{transition:none}}
.serviceStudio.is-flowing .serviceMomentOrb{transition:left 1.8s cubic-bezier(.45,0,.2,1),top 1.8s cubic-bezier(.45,0,.2,1),width 1.8s cubic-bezier(.45,0,.2,1)}
.serviceStudio.is-flowing .serviceBackdrop img{transition:opacity 1.8s ease,filter 1.8s ease}
.serviceStudio[data-service="destination"] .serviceMomentSymbol{opacity:.9}
.serviceStudio[data-service="destination"] .serviceMomentGlass{border-color:transparent;box-shadow:none;background:radial-gradient(circle,rgba(255,224,180,.14),transparent 60%);backdrop-filter:none}
.serviceStudio[data-service="destination"] .serviceMomentGlass:before,.serviceStudio[data-service="destination"] .serviceMomentGlass:after,.serviceStudio[data-service="destination"] .serviceMomentGlass i{opacity:0}
.serviceStudio[data-service="speaker"] .serviceMomentSymbol{opacity:.9}
.serviceStudio[data-service="speaker"] .serviceMomentGlass{background:radial-gradient(circle,rgba(255,224,180,.12),transparent 65%);animation:none}
