*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:#111;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #a729bf;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.055em;line-height:1.02;font-weight:600}h1{font-size:clamp(44px,5.4vw,76px)}h2{font-size:clamp(34px,4vw,56px)}h3{font-size:15px;letter-spacing:-.03em}p{line-height:1.5}.eyebrow,em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.035em}.eyebrow{font-size:21px;margin-bottom:19px}.description{color:#606064;font-size:17px;margin-top:22px}.button{display:inline-flex;align-items:center;gap:26px;border:1px solid #25252b;border-radius:40px;padding:16px 25px;font-size:12px;text-transform:uppercase;font-weight:600;margin-top:30px;transition:background .2s,transform .2s}.button span{font-size:20px;font-weight:400;line-height:1}.button:hover{background:#fff9;transform:translateY(-2px)}.pastel{background-color:#fffdf9;background-image:radial-gradient(ellipse at 98% 35%,#fac1f3 0,transparent 48%),radial-gradient(ellipse at 0 45%,#ffe2ca 0,transparent 43%),radial-gradient(ellipse at 58% 90%,#e4d8ff 0,transparent 45%)}header{height:125px;position:absolute;top:0;left:0;width:100%;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:10px 8%}.brand{display:block;width:120px;height:120px;overflow:hidden;border-radius:50%;position:relative;flex-shrink:0}.brand img{width:138%;height:138%;max-width:none;position:absolute;left:-19%;top:-16%}header .brand{width:96px;height:96px}nav{display:flex;gap:26px;font-size:12px}nav a:hover{color:#c21aaa}.header-cta{margin:0}.menu-toggle{display:none}.hero{height:1040px;text-align:center;padding:160px 20px 0;position:relative}.hero-copy{position:relative;z-index:2}.hero .eyebrow{font-size:20px}.hero-anchor{position:absolute!important;width:300px!important;height:380px!important;top:535px;left:calc(50% - 150px)}.scroll-hint{position:absolute;bottom:35px;left:0;width:100%;font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#747078}.scroll-hint span{display:block;font-size:23px;margin-top:10px}.about{padding:70px 8% 65px;background-image:radial-gradient(ellipse at 65% 30%,#ddcaff,transparent 62%),radial-gradient(ellipse at 0 90%,#f8e5ff,transparent 55%)}.about-top{display:grid;grid-template-columns:1.15fr .8fr .85fr;align-items:center;gap:35px;min-height:310px}.about-top>p{font-size:21px;line-height:1.45;max-width:290px}.balloon-anchor{height:300px;position:relative}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.benefits article,.event-types article{display:flex;gap:20px;align-items:flex-start}.benefits p{font-size:13px;color:#666;margin-top:8px}.icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;font-size:32px;flex-shrink:0;font-family:Arial}.pink{background:#ffddf0;color:#eb2192}.purple{background:#ead8ff;color:#563183}.aqua{background:#c0f2f1;color:#165454}.story{height:560px;background:#fbf3e3;position:relative;display:grid;grid-template-columns:1fr 1fr}.event-photo{height:100%;overflow:hidden;position:relative}.event-photo img{position:absolute;width:210%;max-width:none;left:0;top:-307%}.story>.balloon-anchor{position:absolute;left:calc(50% - 140px);top:40px;width:240px;height:360px}.story-copy{align-self:center;padding:50px 12% 50px 25%;position:relative;z-index:2}.story h2{font-size:42px}.story .eyebrow{font-size:21px}.idea{min-height:490px;background:radial-gradient(ellipse at 65% 25%,#a6f0f1,transparent 65%),#efffff;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:55px 10%;gap:10%}.idea>div:first-child{max-width:400px;position:relative;z-index:2}.idea>.balloon-anchor{height:360px}.gallery{padding:85px 6%;display:grid;grid-template-columns:29% 71%;align-items:center;min-height:590px;background-image:radial-gradient(ellipse at 100% 70%,#ffb5ef,transparent 50%),radial-gradient(ellipse at 55% 10%,#ffebd1,transparent 50%)}.gallery h2{font-size:43px}.gallery .description{max-width:225px}.collage{height:435px;position:relative}.tile{position:absolute;overflow:hidden;border:6px solid #fff6}.tile img{position:absolute;max-width:none}.tile-one{width:40%;height:52%;left:6%;top:0;z-index:2}.tile-one img{width:385%;left:-126%;top:-27%}.tile-two{width:42%;height:28%;left:47%;top:9%}.tile-two img{width:370%;left:-220%;top:-90%}.tile-three{width:27%;height:38%;left:0;top:45%;z-index:3}.tile-three img{width:590%;left:-170%;top:-157%}.tile-four{width:40%;height:69%;left:27%;top:25%;z-index:4}.tile-four img{width:385%;left:-183%;top:-37%}.tile-five{width:33%;height:49%;right:0;top:38%;z-index:5}.tile-five img{width:455%;left:-331%;top:-110%}.final-event{padding:100px 6%;min-height:720px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center;background:radial-gradient(ellipse at 51% 27%,#ffb520 0,transparent 42%),radial-gradient(ellipse at 20% 110%,#ff932d 0,transparent 45%),linear-gradient(115deg,#600540,#d6095f 46%,#45005b);color:white}.final-copy,.event-types{position:relative;z-index:2}.final-copy h2{font-size:clamp(48px,6vw,80px)}.final-copy>p:not(.eyebrow){font-size:18px;margin-top:25px;max-width:300px}.solid{background:white;color:#111;border-color:white}.final-event>.balloon-anchor{height:440px}.event-types{display:grid;gap:42px}.event-types .icon{border:1px solid #ffffff90}.event-types p{font-size:14px;margin-top:8px;color:#ffedfb}.event-types h3{font-size:16px}footer{padding:90px 6% 35px;background-image:radial-gradient(ellipse at 90% 0,#fcd7f4,transparent 45%),radial-gradient(ellipse at 0 70%,#faf0de,transparent 45%)}.footer-grid{display:grid;grid-template-columns:1fr .75fr 1.15fr 1.2fr;gap:35px}.footer-grid>div+div{border-left:1px solid #e6ded8;padding-left:35px}.footer-brand .brand{width:180px;height:180px}.footer-brand p{font-size:21px;margin-top:15px}.footer-grid h3{font-size:17px;margin:15px 0 30px}.footer-grid>div>a:not(.brand){display:block;font-size:14px;color:#646064;margin-bottom:16px}.contact-details a,.contact-details>p{display:flex!important;gap:14px;color:#111!important}.contact-details strong{display:block;font-weight:400;margin-top:5px;overflow-wrap:anywhere}.contact-icon{font-size:27px;line-height:1.1}.location-note{margin:5px 0 0 42px;color:#777!important;font-size:14px}.footer-bottom{border-top:1px solid #d7d0c9;margin-top:55px;padding-top:28px;display:flex;justify-content:space-between;font-size:12px;color:#777}.footer-bottom b{font-size:30px;color:#111;margin-left:20px;font-weight:400}#balloon{position:absolute;top:0;left:0;width:280px;height:514px;z-index:3;pointer-events:none;transform-origin:50% 0;will-change:transform;--hue:330;filter:drop-shadow(0 14px 18px #65245318)}#balloon svg{width:100%;height:100%;overflow:visible}.skip{position:fixed;top:-60px;left:10px;background:white;padding:15px;z-index:20}.skip:focus{top:10px}
@media(min-width:1500px){header,.about,.idea,.gallery,.final-event,footer{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}}
@media(max-width:760px){header{height:95px;padding:10px 6%}header .brand{width:74px;height:74px}.header-cta{margin-left:auto;margin-right:15px;padding:12px 16px;font-size:10px;gap:12px}.menu-toggle{display:block;border:0;background:transparent;font-size:25px;padding:8px}nav{display:none;position:absolute;top:90px;left:5%;right:5%;padding:25px;background:#fff9fb;box-shadow:0 12px 25px #58234615;border-radius:15px;flex-direction:column;gap:20px;font-size:16px}nav.open{display:flex}.hero{height:850px;padding-top:135px}.hero .eyebrow{font-size:17px}h1{font-size:clamp(39px,9vw,60px)}.description{font-size:15px}.desktop{display:none}.hero .description{max-width:360px;margin:22px auto 0}.hero-anchor{top:460px;height:310px!important}.hero .button{margin-top:25px}.scroll-hint{bottom:22px;font-size:9px}.about{padding:55px 7%}.about-top{grid-template-columns:1fr;gap:25px;text-align:center}.about-top h2{font-size:43px}.about-top>p{max-width:330px;margin:auto;font-size:19px}.about-top>.balloon-anchor{height:280px;grid-row:3}.benefits{grid-template-columns:1fr;gap:25px;margin-top:30px}.benefits article{max-width:380px;margin:auto;width:100%}.icon{width:52px;height:52px}.story{height:auto;display:flex;flex-direction:column}.event-photo{height:390px}.event-photo img{width:210%;top:-300%}.story-copy{padding:45px 8% 340px}.story h2,.gallery h2{font-size:40px}.story>.balloon-anchor{top:auto;bottom:15px;left:calc(50% - 120px);height:290px}.idea{padding:50px 8% 20px;grid-template-columns:1fr;gap:20px}.idea>.balloon-anchor{height:340px}.gallery{padding:55px 7%;grid-template-columns:1fr;gap:35px}.gallery .description{max-width:310px}.collage{height:320px}.final-event{padding:60px 8%;grid-template-columns:1fr;gap:30px}.final-copy h2{font-size:61px}.final-event>.balloon-anchor{height:390px}.event-types{gap:30px}.event-types article{align-items:center}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-grid>div+div{border:0;padding-left:0}.footer-brand .brand{width:135px;height:135px}.footer-brand p{font-size:18px}.footer-grid h3{font-size:16px;margin:10px 0 25px}.footer-grid>div>a:not(.brand){font-size:13px}.contact-details{grid-column:1/-1}.footer-bottom{gap:20px;flex-direction:column}footer{padding:55px 7% 25px}}
/* Each temporary photo displays only its photographic region of the reference. */
.event-photo img{width:270%;top:0;transform:translateY(-60.5%)}
.tile img{top:0}.tile-one img{transform:translateY(-3.6%)}.tile-two img{transform:translateY(-6.1%)}.tile-three img{transform:translateY(-15.1%)}.tile-four img{transform:translateY(-8.6%)}.tile-five img{transform:translateY(-13.3%)}
html{scroll-behavior:auto}
/* Preserve the supplied logo in full, without zooming or clipping its border. */
header{mix-blend-mode:multiply}
.brand{border-radius:0;overflow:visible}
.brand img{position:static;display:block;width:100%;height:100%;object-fit:contain;max-width:100%;mix-blend-mode:multiply}
.event-photo img{width:256.83%;height:511.58%;left:0;top:-309.21%;transform:none}
.tile img{transform:none;object-fit:fill}
.tile-one img{width:384.96%;height:775.76%;left:-126.32%;top:-27.27%}
.tile-two img{width:365.71%;height:1567.35%;left:-217.86%;top:-95.92%}
.tile-three img{width:602.35%;height:1066.67%;left:-174.71%;top:-161.11%}
.tile-four img{width:426.67%;height:990.97%;left:-204.17%;top:-170.97%}
.tile-five img{width:497.09%;height:853.33%;left:-366.02%;top:-113.89%}
@media(max-width:760px){.hero-anchor{top:550px}.hero{height:970px}}
@media(min-width:761px){.hero-anchor{top:655px}.hero{height:1160px}}
@media(max-width:760px){.event-photo{height:360px}.event-photo img{width:260%;transform:translateY(-60.5%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}#balloon{will-change:auto}}

/* Only the global animated balloon changes below desktop. No layout changes. */
@media(max-width:1024px){
 #balloon{position:fixed;width:clamp(120px,22vw,260px);max-width:26vh;max-width:26svh;height:auto;aspect-ratio:280 / 514;transform-origin:0 0;z-index:6;opacity:1}
 #balloon svg{display:block}
}
@media(max-width:768px){#balloon{width:clamp(110px,26vw,200px)}}
@media(max-width:480px){#balloon{width:clamp(120px,34vw,160px)}}
#balloon{position:fixed;transform-origin:0 0;z-index:6}
.footer-brand > p{font-style:italic}
/* Real media stays inside the existing photographic frames. */
[data-media-slot] > .work-media{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform:none;opacity:0;transition:opacity 700ms ease;display:block}
[data-media-slot] > .work-media.is-visible{opacity:1}
.social-links a{display:flex!important;align-items:center;gap:10px}
.social-links svg{width:22px;height:22px;flex:none}
@media(prefers-reduced-motion:reduce){[data-media-slot] > .work-media{transition:none}}
