/* PREMIUM CELEBRATION — shared site-wide after owner review, 29 September 2026. */
body{--surface-light:#fffaf0;--surface-paper:#fffef9;--surface-dark:#1f2545;--surface-deep:#191e39;--text-on-light-primary:#1f2545;--text-on-light-secondary:#485169;--text-on-dark-primary:#fffdf6;--text-on-dark-secondary:#e0e5f0;--accent-light:#176467;--accent-dark:#17e4db;--border-light:#d4d9d0;--border-dark:#66718b;--radius:999px;--section-space:104px;background:#fffaf0}
#header{background:#1f2545;border-bottom:3px solid #d6bb69;min-height:88px}#header.scrolled{background:#1f2545}.brand small{color:#17e4db}.desktop-nav a{color:#f7f7fb}.header-cta{background:#17e4db!important;color:#1f2545!important;border-color:#17e4db!important}.primary,.pill{background:linear-gradient(110deg,#17e4db,#28c6db 70%,#44a4e3);color:#1f2545;border:0;box-shadow:0 5px 0 #d6bb69;min-height:54px;padding:15px 26px;gap:24px;transition:transform 220ms,box-shadow 220ms,background 220ms}.primary:hover,.pill:hover{background:#e8cd7e;color:#1f2545;transform:translateY(-3px);box-shadow:0 8px 0 #28c6db}.primary:active{transform:translateY(1px);box-shadow:0 2px 0 #d6bb69}.header-cta{box-shadow:none}.eyebrow{letter-spacing:.14em}.media-frame{border-radius:24px}.media-frame>img{transition:transform .65s var(--ease)}.brand-fragment{position:absolute;pointer-events:none;overflow:hidden;z-index:0}.brand-fragment.ornament{width:330px;height:310px}.brand-fragment.star{width:65px;height:65px}.hero-ornament{right:-75px;top:15px;opacity:.65}.hero-star{left:45%;top:70px;transform:rotate(-14deg)}.section,.home-stage,.hero,.hero-mini,.closing,.footer,.quote-panel{position:relative}.section>*,.home-stage>.home-intro,.hero>.hero-copy,.hero-mini>:not(.brand-fragment),.closing-copy>:not(.brand-fragment),.quote-panel>:not(.brand-fragment),.footer-grid,.foot-bottom{position:relative;z-index:1}
/* Home: a framed celebration scene, warm colour field and ornamental corners. */
body[data-page="index"] .home-stage{max-width:none;min-height:690px;grid-template-columns:1fr 1fr;align-items:center;padding:44px max(var(--gutter),calc((100vw - 1440px)/2 + 60px)) 62px;gap:46px;background:linear-gradient(115deg,#d8faf3 0%,#cdf4ee 48%,#b8dafa 100%);isolation:isolate;overflow:hidden;border-radius:0 0 72px 0}
body[data-page="index"] .home-stage:before{content:"";position:absolute;right:-7%;bottom:-270px;width:70%;height:600px;border:74px solid #4779d7;border-radius:50%;opacity:.17;transform:rotate(-18deg);pointer-events:none}
body[data-page="index"] .home-intro{padding:20px 0;align-self:center}.home-intro h1{font-size:clamp(70px,7.4vw,112px);line-height:1.02;max-width:650px;letter-spacing:-.045em}.home-intro h1 em{color:#1f2545}.home-intro .eyebrow{color:#225465}.home-intro>p:not(.eyebrow){max-width:430px;color:#344a61}.home-intro .actions{margin-top:28px}.hero-index{font-size:10px;letter-spacing:.12em;color:#344a61;margin-top:32px;max-width:410px;line-height:1.9}
body[data-page="index"] .home-stage>.media-frame{aspect-ratio:4/5;min-height:0;height:auto;max-height:610px;width:100%;margin:0;border-radius:180px 180px 24px 24px;border:9px solid #fffaf0;outline:1px solid #b58d16;outline-offset:9px;box-shadow:18px 24px 0 #4779d733;transform:rotate(2deg);animation:celebration-photo-in 800ms var(--ease) both}
body[data-page="index"] .hero-ornament{left:-95px;top:auto;bottom:-135px;width:390px;height:370px;opacity:.6}.home-stage .hero-star{left:auto;right:44%;top:28px;z-index:3;width:78px;height:78px}.intro-band{background:#e8cd7e;max-width:none;margin:28px var(--gutter) 0;padding:28px 48px;gap:32px;border-radius:22px;position:relative}.intro-band p{font-size:23px;color:#1f2545}.intro-band .eyebrow{color:#1f2545}.intro-band .band-star{position:relative;width:42px;height:42px;flex:none;filter:brightness(.55)}
body[data-page="index"] main>.surface-dark{background:#1f2545}.feature-editorial{grid-template-columns:1.05fr 1fr;gap:80px;padding-top:80px;padding-bottom:80px;margin-top:64px}.feature-editorial .feature-copy{order:-1}.feature-editorial>.media-frame{border-radius:100px 24px 24px 24px;border:8px solid #fffaf0;box-shadow:-20px 20px 0 #17e4db}.feature-editorial h2{font-size:clamp(44px,4.8vw,72px)}.feature-editorial em{color:#e8cd7e}.feature-index{gap:12px}.feature-index a,.feature-index a:last-child{background:#ffffff0b;border:1px solid #697187;border-radius:16px;padding:20px;gap:18px;transition:background .2s,transform .2s}.feature-index a:hover{background:#17e4db19;transform:translateX(5px)}.feature-index small{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e8cd7e;color:#1f2545}.feature-index h3{font-size:26px}
.occasion-section{background:#fffaf0}.occasion-grid{gap:32px;align-items:stretch}.occasion-feature{padding:14px 14px 24px;border-radius:120px 24px 24px 24px;background:#d6f7f0;box-shadow:0 10px 35px #1f254509}.occasion-feature:nth-child(even){padding-top:14px;margin-top:68px;background:#e3e9fd;border-radius:24px 120px 24px 24px}.occasion-feature .media-frame{border-radius:110px 16px 16px 16px}.occasion-feature:nth-child(even) .media-frame{border-radius:16px 110px 16px 16px;aspect-ratio:4/3}.occasion-caption{padding:8px 16px 0}.occasion-caption h3{font-size:36px}.occasion-caption .arrow{width:38px;height:38px;border-radius:50%;padding:9px;background:#e8cd7e}.occasion-links{gap:24px}.occasion-links>a{padding:26px;background:#fffef9;border:1px solid #d6bb69;border-radius:18px}.occasion-links h3{font-size:28px}
.guest-feature{background:#e2f5fb;border-radius:30px;max-width:calc(1440px - 2*var(--gutter));margin:0 var(--gutter) 84px;padding:72px 56px;gap:48px;overflow:visible}.guest-feature h2 em{color:#185879}.media-stack>.media-frame:first-child{border:7px solid #fffef9;border-radius:24px;transform:rotate(-3deg)}.media-stack>.media-frame:last-child{border:8px solid #fffef9;border-radius:20px;transform:rotate(5deg);box-shadow:0 10px 30px #1f25451c}.guest-tags a{border:1px solid #7395a9;background:#fffef9;border-radius:999px;padding:10px 16px}.guest-tags a:hover{background:#e8cd7e}
body[data-page="index"] main>.surface-dark:has(.gallery-sequence){background:#cdf5ed;--ink:#1f2545;--muted:#485169;--accent:#176467;--line:#769897;border-radius:64px 0 0 0}.gallery-sequence{gap:32px;grid-template-columns:1fr 1.25fr .7fr}.gallery-sequence>.media-frame{border:7px solid #fffef9;box-shadow:0 12px 25px #1f254514}.gallery-sequence>.media-frame:nth-child(1){transform:rotate(-3deg)}.gallery-sequence>.media-frame:nth-child(2){transform:rotate(2deg)}.gallery-sequence>.media-frame:nth-child(3){border-color:#e8cd7e;transform:rotate(-5deg)}.trust-points>div{padding:24px;border:1px solid #d6bb69;background:#fffef9;border-radius:20px}.trust-points small{background:#e8cd7e;color:#1f2545;border-radius:50%;height:32px;width:32px;display:grid;place-items:center;padding:0}.trust-points{gap:16px}.faq-list{border-top:0}.faq-list details{background:#fffef9;border:1px solid #d4d9d0;border-radius:14px;margin-bottom:10px;padding:0 24px}.faq-toggle{color:#176467}
.intro-band .eyebrow{font-size:11px;line-height:1.8}.home-stage .hero-ornament{opacity:.9!important}
body[data-page="index"] .home-stage{background:linear-gradient(115deg,#d8faf3 0%,#c7f6ed 45%,#52ddd7 72%,#7eb6ec 100%)}
/* The service review has an entertainment-led hero and feature/ticket modules. */
body[data-page="service-360-video-booth"] .service-hero{max-width:none;padding:56px var(--gutter) 70px;grid-template-columns:.85fr 1.15fr;gap:64px;background:linear-gradient(115deg,#ccfaf1,#d0e5fc);isolation:isolate;overflow:hidden;border-radius:0 0 0 72px}
body[data-page="service-360-video-booth"] .hero-copy{max-width:560px}.booth-number{display:block;font-size:clamp(112px,12vw,184px);line-height:.8;letter-spacing:-.07em;color:#1f2545}.booth-name{display:block;font-size:clamp(54px,5.8vw,88px);line-height:1.1;margin-top:12px;font-style:italic;color:#185879}.service-hero .lead{font-size:17px}.service-hero .price-summary{font-size:30px;padding:18px 24px;background:#fffef9;border-left:5px solid #d6bb69;border-radius:0 16px 16px 0;max-width:410px}.service-hero .price-summary small{font-size:12px}.service-hero>.media-frame{border:9px solid #fffef9;border-radius:34px;outline:2px solid #d6bb69;outline-offset:9px;box-shadow:20px 24px 0 #4779d72e;transform:rotate(2deg);z-index:1}.service-hero .hero-ornament{right:-40px;top:-90px;width:390px;height:370px;opacity:.6}.service-hero .hero-star{left:43%;top:70%;z-index:3}
body[data-page="service-360-video-booth"] .inclusions-layout{grid-template-columns:1fr 1fr;gap:18px 72px;align-items:center;padding-top:96px}.inclusions-layout>div{display:contents}.inclusions-layout>.media-frame{grid-column:2;grid-row:1/4;border:7px solid #fffef9;box-shadow:12px 14px 0 #e8cd7e;border-radius:80px 24px 24px 24px}.inclusions-layout .eyebrow{grid-column:1;margin:0}.inclusions-layout h2{grid-column:1;margin:0;font-size:clamp(40px,4.2vw,62px)}.inclusions-layout .copy{grid-column:1;font-size:16px}.inclusions-layout .list{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border:0;margin-top:36px}.inclusions-layout .row{display:flex;flex-direction:column;gap:18px;border:0;border-radius:22px;background:#d6f7ef;padding:30px}.inclusions-layout .row:nth-child(2){background:#e9dbac}.inclusions-layout .row:nth-child(3){background:#dce7ff}.inclusions-layout .row>span{width:42px;height:42px;border-radius:50%;background:#fffef9;display:grid;place-items:center;color:#1f2545;font-weight:600}.inclusions-layout .row h3{font-family:var(--font-display);font-size:31px}.inclusions-layout .row p{font-size:15px}.pricing-grid{border:0;gap:22px}.price-option{border:1px solid #d6bb69;border-radius:24px;padding:34px;background:#fffef9;position:relative;overflow:hidden}.price-option:before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:linear-gradient(90deg,#17e4db,#4779d7)}.price-option:nth-child(2){background:#e8cd7e;border-color:#e8cd7e}.price-option:nth-child(3){background:#d6f7ef}.price-option h3{font-size:17px;color:#1f2545}.price-option strong{font-size:64px;margin-top:20px}.price-option:hover{transform:translateY(-4px);background:#effaff}.notice{margin-top:22px;border-radius:12px}.related-grid a{padding:28px;border:1px solid #d6bb69;background:#fffef9;border-radius:20px}.quote-panel{background:linear-gradient(105deg,#c9f8ed,#bfddfa);--ink:#1f2545;--muted:#485169;--accent:#176467;--surface:#d3f7f0;--line:#80978d;border-radius:40px;overflow:hidden}.quote-panel h2{max-width:760px}.quote-panel .cta-ornament{right:-100px;bottom:-70px;width:420px;height:400px;opacity:.5}
/* Weddings: a softer, centred invitation and a framed panoramic detail. */
body[data-page="weddings"] .occasion-hero{max-width:none;background:#e1f7f0;padding-bottom:62px;padding-top:44px;overflow:hidden}.occasion-hero .breadcrumbs{max-width:1296px;margin:0 auto 36px}.occasion-intro{display:block;text-align:center;max-width:950px;margin:auto}.occasion-intro>div:last-child{max-width:680px;margin:24px auto 0}.occasion-intro .actions{justify-content:center;margin-top:24px}.occasion-intro h1{font-size:clamp(56px,6.6vw,96px)}.occasion-intro h1 em{color:#176467}.occasion-hero .hero-ornament{left:-120px;right:auto;top:80px;width:370px;height:350px;opacity:.6}.occasion-hero .hero-star{left:auto;right:8%;top:65%;width:58px;height:58px}.occasion-hero-media{background:#e1f7f0;max-width:none;padding:0 var(--gutter) 46px;margin:0;border-radius:0 0 80px 0}.occasion-hero-media .media-frame{border:9px solid #fffef9;outline:1px solid #b58d16;outline-offset:7px;border-radius:130px 130px 24px 24px;max-width:1296px;margin:auto;max-height:none;aspect-ratio:21/9}.occasion-story{gap:76px;align-items:center}.occasion-story>.media-frame{border-radius:140px 140px 20px 20px;border:8px solid #fffef9;box-shadow:-18px 18px 0 #e8cd7e}.occasion-story h2 em{color:#176467}.occasion-service-grid{gap:20px;grid-template-columns:repeat(3,1fr)}.occasion-service-grid .catalogue-item,.occasion-service-grid .catalogue-item:last-child{grid-template-columns:28px 1fr;gap:14px;padding:28px;background:#fffef9;border:1px solid #d6bb69;border-radius:22px}.occasion-service-grid .catalogue-item>.arrow{grid-column:2}.occasion-service-grid .catalogue-item:nth-child(3n+2){background:#d6f7ef}.occasion-service-grid .catalogue-item:nth-child(3n+3){background:#e4ebfd}.occasion-service-grid .catalogue-number{color:#176467}.occasion-service-grid .catalogue-item h3{font-size:29px}
/* CTA and footer are composed as a celebratory finale, not another dark strip. */
.closing{margin:0;background:#d4f6ee;--ink:#1f2545;--muted:#485169;--accent:#176467;--line:#95aaa3;--surface:#d4f6ee;grid-template-columns:1fr .8fr;align-items:center;padding:60px var(--gutter);gap:72px;border-radius:70px 0 0 0;isolation:isolate;overflow:hidden;min-height:0}.closing-copy{padding:16px 0;position:relative}.closing h2{font-size:clamp(50px,5.8vw,84px)}.closing>.media-frame{min-height:0;aspect-ratio:4/3;border:8px solid #fffef9;border-radius:24px 110px 24px 24px;transform:rotate(3deg);box-shadow:13px 15px 0 #e8cd7e}.closing .cta-ornament{width:380px;height:360px;left:-240px;top:-80px;opacity:.45;z-index:-1}.footer{background:#1f2545;padding:88px var(--gutter) 28px;overflow:hidden;border-top:7px solid #e8cd7e;isolation:isolate}.footer-grid{gap:42px}.footer .wordmark{font-size:44px;color:#fffef9}.footer h2{color:#e8cd7e}.footer-brand p{color:#e0e5f0}.footer-contact>a:first-of-type strong{font-family:var(--font-display);font-size:34px;color:#17e4db}.footer .footer-ornament{right:-130px;bottom:-230px;width:580px;height:550px;opacity:.25;z-index:0}.footer .footer-star{right:8%;top:28px;width:42px;height:42px;transform:rotate(14deg)}.footer .social-links a{background:#17e4db;color:#1f2545;border:0}.footer .social-links a:hover{background:#e8cd7e}.foot-bottom{border-color:#778198}.footer a:hover{color:#e8cd7e}.footer .footer-controls{gap:26px}.brand-fragment.hero-star{animation:celebration-star-in 950ms var(--ease) both}@keyframes celebration-star-in{from{opacity:0;transform:translateY(16px) rotate(-20deg)}to{opacity:1;transform:translateY(0) rotate(-8deg)}}@keyframes celebration-photo-in{from{opacity:0;transform:translateY(18px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(2deg)}}
@media(min-width:1580px){.guest-feature{margin-inline:auto}}
@media(max-width:1100px){body[data-page="index"] .home-stage{gap:36px;padding-inline:var(--gutter);min-height:630px}.home-intro h1{font-size:78px}.home-stage .hero-star{right:43%;width:55px;height:55px}.feature-editorial{gap:50px}.guest-feature{padding:54px 36px}.occasion-service-grid{grid-template-columns:1fr 1fr}body[data-page="service-360-video-booth"] .service-hero{gap:40px}.service-hero .lead{font-size:16px}.service-hero .price-summary{font-size:27px}.inclusions-layout{gap:20px 42px}.closing{gap:44px}.footer-grid{gap:30px}.footer-contact>a:first-of-type strong{font-size:30px}}
@media(max-width:700px){body{--section-space:66px}#header{min-height:78px}.primary{padding:14px 22px;font-size:12px;min-height:50px}.home-intro h1{font-size:clamp(55px,14vw,87px);line-height:1.03;margin-bottom:20px}body[data-page="index"] .home-stage{display:flex;padding:30px 24px 38px;gap:28px;min-height:0;border-radius:0 0 44px 0;align-items:stretch}.home-intro{padding:0!important}.home-intro .eyebrow{font-size:9px;margin-bottom:18px;max-width:275px}.home-intro>p:not(.eyebrow){font-size:14px;max-width:440px}.home-intro .actions{gap:15px 20px;margin-top:23px}.home-intro .textlink{font-size:12px}.hero-index{display:none}body[data-page="index"] .home-stage>.media-frame{width:calc(100% - 16px);margin:8px 8px 0;aspect-ratio:6/5;max-height:none;border:6px solid #fffaf0;border-radius:100px 100px 18px 18px;outline-offset:5px;box-shadow:10px 12px 0 #4779d733}.home-stage .hero-star{right:16px;top:27px;width:38px;height:38px}.home-stage .hero-ornament{left:-135px!important;bottom:-100px!important;width:300px!important;height:290px!important;opacity:.35!important}.intro-band{margin:22px 20px 0;padding:26px;gap:12px;border-radius:18px}.intro-band p{font-size:18px}.intro-band .eyebrow{font-size:10px}.intro-band .band-star{position:absolute;right:20px;top:18px;width:26px;height:26px}.feature-editorial{margin-top:44px;padding-top:52px;padding-bottom:64px;gap:36px}.feature-editorial .feature-copy{order:0}.feature-editorial>.media-frame{aspect-ratio:5/4;border-radius:65px 18px 18px 18px;border-width:6px;box-shadow:-10px 12px 0 #17e4db;max-width:100%}.feature-editorial h2{font-size:43px}.feature-index h3{font-size:25px}.feature-index a{padding:16px;gap:12px}.occasion-grid{grid-template-columns:1fr;gap:26px}.occasion-feature,.occasion-feature:nth-child(even){margin-top:0;padding:10px 10px 20px;border-radius:80px 20px 20px 20px}.occasion-feature .media-frame,.occasion-feature:nth-child(even) .media-frame{aspect-ratio:4/5;border-radius:72px 14px 14px 14px}.occasion-caption{padding:4px 12px 0}.occasion-caption h3{font-size:32px}.occasion-caption p{font-size:13px}.occasion-links{grid-template-columns:1fr;gap:16px}.occasion-links>a{padding:24px}.occasion-links h3{font-size:27px}.guest-feature{margin:0 20px 56px;padding:42px 24px;gap:36px;border-radius:24px}.guest-feature h2{font-size:40px}.media-stack{margin-right:6px}.guest-tags{gap:8px}.guest-tags a{font-size:11px;padding:8px 11px}.gallery-sequence{gap:20px}.gallery-sequence>.media-frame{border-width:5px}.gallery-note{gap:16px}.trust-points>div{padding:22px;gap:16px}.faq-list details{padding:0 18px}.faq-section{gap:24px}.faq-section h2{font-size:40px}body[data-page="service-360-video-booth"] .service-hero{grid-template-columns:1fr;padding:30px 24px 54px;gap:32px;border-radius:0 0 0 42px}.service-hero .breadcrumbs{font-size:11px;margin-bottom:28px}.booth-number{font-size:128px}.booth-name{font-size:59px;margin-top:10px}.service-hero h1{margin-bottom:20px}.service-hero .lead{font-size:15px}.service-hero .price-summary{font-size:27px;margin:22px 0;padding:16px 19px}.service-hero .actions{margin-top:26px;gap:16px}.service-hero>.media-frame{width:calc(100% - 12px);margin:8px 6px 0;border-width:6px;outline-offset:5px;border-radius:24px;box-shadow:10px 13px 0 #4779d72e}.service-hero .hero-ornament{right:-105px;top:65px;width:260px;height:250px;opacity:.33}.service-hero .hero-star{left:auto;right:38px;top:46px;width:40px;height:40px}body[data-page="service-360-video-booth"] .inclusions-layout{grid-template-columns:1fr;gap:20px;padding-top:62px}.inclusions-layout>.media-frame{grid-column:1;grid-row:4;aspect-ratio:4/3;margin:14px 6px 12px 0;border-width:6px;border-radius:60px 20px 20px 20px;box-shadow:8px 10px 0 #e8cd7e}.inclusions-layout h2{font-size:42px}.inclusions-layout .list{grid-template-columns:1fr;margin-top:10px;gap:16px}.inclusions-layout .row{padding:26px;gap:14px}.inclusions-layout .row h3{font-size:31px}.pricing-grid{grid-template-columns:1fr;gap:16px}.price-option{padding:26px 28px;display:flex;justify-content:space-between;align-items:center}.price-option strong{margin:0;font-size:55px}.related-grid a{padding:25px}.quote-panel{padding:38px 26px;border-radius:28px}.quote-panel h2{font-size:44px}.quote-panel .cta-ornament{opacity:.25;right:-190px}.occasion-hero .breadcrumbs{margin-bottom:24px;font-size:11px}.occasion-hero .occasion-intro h1{font-size:53px}.occasion-intro h1 em{font-size:50px}.occasion-intro>div:last-child{margin-top:22px}.occasion-intro p:not(.eyebrow){font-size:15px}.occasion-hero .eyebrow{font-size:9px}body[data-page="weddings"] .occasion-hero{padding:30px 24px 36px}.occasion-hero .hero-ornament{left:-180px;top:110px;opacity:.25}.occasion-hero .hero-star{right:16px;top:35px;width:32px;height:32px}.occasion-hero-media{padding:0 24px 36px;border-radius:0 0 42px 0}.occasion-hero-media .media-frame{aspect-ratio:3/2;border-width:6px;outline-offset:5px;border-radius:65px 65px 16px 16px}.occasion-story{gap:36px}.occasion-story>.media-frame{aspect-ratio:4/3;border-radius:70px 70px 18px 18px;border-width:6px;box-shadow:-10px 12px 0 #e8cd7e}.occasion-service-grid{grid-template-columns:1fr;gap:16px}.occasion-service-grid .catalogue-item,.occasion-service-grid .catalogue-item:last-child{padding:25px}.closing{grid-template-columns:1fr;padding:44px 24px 54px;gap:36px;border-radius:44px 0 0 0}.closing-copy{padding:0}.closing h2{font-size:55px}.closing-copy>p:not(.eyebrow){font-size:15px}.closing>.media-frame{height:240px;aspect-ratio:auto;margin-inline:6px;border-width:6px;border-radius:20px 75px 20px 20px;box-shadow:8px 10px 0 #e8cd7e}.footer{padding:62px 24px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px 24px}.footer-brand .wordmark{font-size:43px}.footer-contact>a:first-of-type strong{font-size:36px}.footer-contact strong{font-size:15px}.footer-contact{padding-bottom:20px;border-bottom:1px solid #69738e}.footer .footer-ornament{right:-250px;bottom:-170px;width:520px;height:500px;opacity:.2}.footer .footer-star{top:20px;right:26px;width:30px;height:30px}.footer-follow{grid-column:auto}.foot-bottom{margin-top:34px}.footer .textlink{font-size:12px}.footer .footer-controls{flex-wrap:wrap;gap:20px}}
@media(max-width:375px){.home-intro h1{font-size:51px}.home-intro .actions{flex-direction:row;align-items:center}.home-intro .primary{padding-inline:18px}.home-stage .hero-star{width:29px;height:29px;right:12px}.occasion-feature .media-frame,.occasion-feature:nth-child(even) .media-frame{aspect-ratio:4/3}.home-intro .eyebrow{max-width:240px}.footer .wordmark{font-size:37px}.footer .footer-controls{gap:15px}.occasion-hero .occasion-intro h1{font-size:48px}.occasion-intro h1 em{font-size:46px}}
/* Cards sit inside a dark section but have their own light reading surface. */
.occasion-service-grid .catalogue-item{--ink:#1f2545;--muted:#485169;--accent:#176467;color:var(--ink)}
body[data-page="index"] main>.closing{background:#d4f6ee}
.home-intro .eyebrow,.home-intro>p:not(.eyebrow),.hero-index{color:#1f2545}
.price-option:before{background:linear-gradient(90deg,#17e4db,#28c6db,#44a4e3,#4779d7)}
/* Decorative cropping must not create an internal keyboard-focus scroll box. */
.footer{overflow:clip}
/* Keep icons navy on both aqua and gold. General footer link hover must not win. */
.footer .social-links a:hover,.footer .social-links a:focus-visible{background:#e8cd7e;color:#1f2545}
.footer .social-links a svg{color:inherit;stroke:currentColor}

/* Shared interior-page identity, with distinct service/occasion treatments. */
.hero-mini:not(.occasion-hero){max-width:none;background:linear-gradient(115deg,#d8faf3,#c3ecf1 65%,#c6dafa);border-radius:0 0 64px 0;overflow:clip;isolation:isolate}
.hero-mini:not(.occasion-hero)>:not(.brand-fragment){position:relative;z-index:1}
.hero-mini.with-media{gap:72px;align-items:center;padding-block:64px}
.hero-mini.with-media h1{font-size:clamp(54px,6.4vw,96px)}
.hero-mini.with-media>.media-frame{border:8px solid #fffef9;outline:1px solid #b58d16;outline-offset:7px;border-radius:100px 24px 24px 24px;box-shadow:14px 16px 0 #4779d72e}
.hero-mini .hero-star{left:auto;right:3%;top:28px;width:46px;height:46px}
.hero-mini .hero-ornament{right:-150px;top:60px;opacity:.35}
.hero-mini:not(.with-media):not(.occasion-hero){padding-right:max(24px,16vw)}
body[data-page="services"] .catalogue-layout{gap:56px;padding-top:72px}
.catalogue-nav{position:sticky;background:#e1f7f0;border:1px solid #c0d9ca;border-radius:22px;padding:26px}
.catalogue-nav nav a{font-size:14px}
.catalogue-group{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.catalogue-heading{grid-column:1/-1;margin-bottom:10px}
.catalogue-group>.catalogue-item{border:1px solid #d6bb69;border-radius:22px;padding:25px;background:#fffef9;grid-template-columns:24px minmax(0,1fr) 20px;gap:14px;transition:transform .25s,background .25s}
.catalogue-group>.catalogue-item:nth-child(3n){background:#d6f7ef}
.catalogue-group>.catalogue-item:nth-child(3n+1){background:#e4ebfd}
.catalogue-group>.catalogue-item:hover{background:#f4e6b8;transform:translateY(-3px)}
.catalogue-group .catalogue-item h3{font-size:29px}

/* Service families keep one identity without making all experiences identical. */
body[data-celebration-family]{--experience-start:#d8faf3;--experience-end:#c9e5fa}
body[data-celebration-family="food-drink"]{--experience-start:#fff1c9;--experience-end:#c9f5e7}
body[data-celebration-family="styling"]{--experience-start:#d0f6ea;--experience-end:#cbd8fa}
body[data-celebration-family="finishing-touches"]{--experience-start:#fff6de;--experience-end:#dcf4ee}
body[data-celebration-family="structures"]{--experience-start:#d3ebf8;--experience-end:#d9f5ec}
body[data-celebration-family] .service-hero{max-width:none;padding:56px var(--gutter) 70px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;background:linear-gradient(115deg,var(--experience-start),var(--experience-end));isolation:isolate;overflow:clip;border-radius:0 0 0 72px}
body[data-celebration-family] .service-hero h1{font-size:clamp(54px,6.5vw,94px);overflow-wrap:break-word}
body[data-celebration-family="food-drink"] .service-hero>.media-frame{border-radius:150px 150px 24px 24px;transform:rotate(-2deg)}
body[data-celebration-family="styling"] .service-hero>.media-frame{border-radius:110px 24px 110px 24px}
body[data-celebration-family="structures"] .service-hero>.media-frame{border-radius:24px;transform:none;box-shadow:16px 16px 0 #4779d733}
body[data-celebration-family="finishing-touches"] .service-hero>.media-frame{border-radius:160px 160px 24px 24px;transform:rotate(-1deg)}
body[data-page="service-bubble-house"] .service-hero>.media-frame{border-radius:50% 50% 26px 26px}
body[data-page="service-mojito-cart"] .service-hero{--experience-start:#d0fae8;--experience-end:#bfeafa}
body[data-page="service-chocolate-fountain"] .service-hero{--experience-start:#f9e7cf;--experience-end:#dcf6eb}
body[data-celebration-family] .inclusions-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 72px;align-items:center;padding-top:88px}
.inclusions-layout .row{--ink:#1f2545;--muted:#485169;--accent:#176467;color:var(--ink)}
.inclusions-layout .list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.price-option>p{font-size:14px;margin-top:14px;color:#485169}
.price-option{--ink:#1f2545;--muted:#485169;--accent:#176467}
.bento>.card{border-radius:24px;border-color:#d6bb69;--ink:#1f2545;--muted:#485169;--accent:#176467;background:#fffef9}
.bento>.card:first-child{background:#e8cd7e}
.bento>.card:first-child h3{font-size:55px}
.trust-points>div{--ink:#1f2545;--muted:#485169;--accent:#176467;color:var(--ink)}

body[data-page="mehndi"] .occasion-hero,body[data-page="corporate"] .occasion-hero{max-width:none;overflow:clip;padding-bottom:50px;background:#cbf5e9}
body[data-page="mehndi"] .occasion-hero{background:linear-gradient(115deg,#b7f0e5,#c1d4f7)}
body[data-page="mehndi"] .occasion-hero-media{background:#c1d4f7}
body[data-page="mehndi"] .occasion-hero-media .media-frame{border-radius:36px 130px 36px 130px;border-color:#e8cd7e}
body[data-page="corporate"] .occasion-hero,body[data-page="corporate"] .occasion-hero-media{background:#d6edf5}
body[data-page="corporate"] .occasion-intro{text-align:left;max-width:none;display:grid;grid-template-columns:1.2fr .8fr;gap:64px}
body[data-page="corporate"] .occasion-intro .actions{justify-content:start}
body[data-page="corporate"] .occasion-hero-media .media-frame{border-radius:24px}
body[data-page="gallery"] .gallery-intro{margin-bottom:56px}
.gallery-composition>.media-frame{border:7px solid #fffef9;box-shadow:10px 12px 0 #e8cd7e;border-radius:28px}
.gallery-composition>.media-frame:nth-child(2n){border-radius:90px 24px 24px 24px;box-shadow:10px 12px 0 #28c6db55}
.event-brief{background:#e8cd7e;border:1px solid #d6bb69;border-radius:28px}
.contact-option{background:#e0f7ee;border:1px solid #a5c4bb;border-radius:20px;padding:26px}
.contact-option:nth-child(2){background:#e0e9fc}.contact-option:nth-child(3){background:#fbefcb}
.legal-index{background:#e0f7ee;padding:24px;border-radius:20px;border:1px solid #aecac0}
.legal-layout{padding-top:54px}.legal .warning{border-radius:16px;background:#fbefcb}
body[data-page="privacy"] .hero-star,body[data-page="terms"] .hero-star{display:none}
body[data-page="mehndi"] .occasion-hero .eyebrow,.event-brief .eyebrow,.bento>.card:first-child small{color:#1f2545}

/* Requested ambient movement: slow, small-range drift; no screen-wide sweeps. */
@media(prefers-reduced-motion:no-preference){
 .brand-fragment.hero-star,.brand-fragment.footer-star{animation:celebration-star-drift 12s ease-in-out infinite alternate;transform-origin:center}
 .brand-fragment.hero-ornament,.brand-fragment.cta-ornament,.brand-fragment.footer-ornament{animation:celebration-ornament-drift 20s ease-in-out infinite alternate;transform-origin:center}
 .brand-fragment.footer-ornament{animation-delay:-8s}.brand-fragment.cta-ornament{animation-delay:-4s}
}
@keyframes celebration-star-drift{from{transform:translateY(-5px) rotate(-9deg)}to{transform:translateY(7px) rotate(5deg)}}
@keyframes celebration-ornament-drift{from{transform:translate(-4px,5px) rotate(-3deg)}to{transform:translate(7px,-7px) rotate(4deg)}}
@media(max-width:1100px){
 .catalogue-layout{grid-template-columns:200px minmax(0,1fr);gap:32px!important}.catalogue-group{grid-template-columns:1fr}
 body[data-celebration-family] .service-hero{gap:42px}
 body[data-celebration-family] .service-hero h1{font-size:64px}
 .hero-mini.with-media{gap:40px}
}
@media(max-width:700px){
 .hero-mini:not(.occasion-hero){padding:32px 24px 44px;border-radius:0 0 42px 0}
 .hero-mini.with-media{gap:32px}.hero-mini.with-media>.media-frame{border-width:6px;outline-offset:5px;border-radius:70px 20px 20px 20px}
 .hero-mini.with-media h1{font-size:53px}.hero-mini .hero-ornament{right:-190px;opacity:.22}.hero-mini .hero-star{width:30px;height:30px;right:14px}
 .catalogue-layout{grid-template-columns:minmax(0,1fr);gap:36px!important}.catalogue-nav{position:static;padding:24px}.catalogue-nav nav{gap:4px 20px}.catalogue-group{gap:14px}.catalogue-group>.catalogue-item{padding:22px}
 body[data-celebration-family] .service-hero{grid-template-columns:minmax(0,1fr);padding:30px 24px 54px;gap:32px;border-radius:0 0 0 42px}
 body[data-celebration-family] .service-hero h1{font-size:54px}
 body[data-celebration-family] .service-hero>.media-frame{border-radius:70px 24px 24px 24px}
 body[data-celebration-family="food-drink"] .service-hero>.media-frame,body[data-page="service-bubble-house"] .service-hero>.media-frame{border-radius:90px 90px 24px 24px}
 body[data-celebration-family] .inclusions-layout{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:62px}
 .inclusions-layout .list{grid-template-columns:minmax(0,1fr)}
 .price-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.price-option>p{grid-column:1/-1;margin:0}.price-option h3{font-size:15px}
 .bento>.card{grid-column:1/-1}
 body[data-page="mehndi"] .occasion-hero,body[data-page="corporate"] .occasion-hero{padding:30px 24px 36px}
 body[data-page="corporate"] .occasion-intro{display:block;text-align:center}.occasion-intro>div:last-child{margin-top:22px}body[data-page="corporate"] .occasion-intro .actions{justify-content:center}
 body[data-page="mehndi"] .occasion-hero-media .media-frame{border-radius:26px 65px 26px 65px}
 .contact-option{padding:24px 20px}.contact-option strong{font-size:26px}
 .contact-option[href^="mailto:"]{grid-template-columns:minmax(0,1fr)}
 .contact-option[href^="mailto:"] strong{font-family:var(--font-body);font-size:clamp(14px,4vw,20px)}
 .contact-option[href^="mailto:"] .arrow{grid-column:1;grid-row:3}
 .legal-layout{padding-top:36px}.legal-index{padding:22px}
}
@media(max-width:700px){.feature-editorial{grid-template-columns:1fr}.gallery-sequence{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.brand-fragment,.home-stage>.media-frame{animation:none!important}.primary:hover,.price-option:hover,.feature-index a:hover{transform:none}}
html.reduce-motion .brand-fragment,html.reduce-motion .home-stage>.media-frame{animation:none!important}html.reduce-motion .primary:hover,html.reduce-motion .price-option:hover,html.reduce-motion .feature-index a:hover{transform:none}
