@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap');
.festival{--wine:#480d30;--ink:#43102c;--gold:#ffd77b;--cream:#fff6e7;margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:clip}.festival *{box-sizing:border-box}.festival a{color:inherit}.festival button,.festival input,.festival select,.festival textarea{font:inherit}.festival h1,.festival h2,.festival h3,.festival p{margin:0}.festival h1,.festival h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.045em}.festival p{line-height:1.75}.festive-wrap{width:min(1180px,calc(100% - 160px));margin:auto}.festive-nav{position:absolute;inset:0 0 auto;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:22px max(80px,calc((100vw - 1180px)/2));gap:24px;color:white;border-bottom:1px solid #ffffff25}.festive-brand{background:white;border-radius:5px;padding:7px 12px;display:flex;flex-shrink:0}.festive-brand img{object-fit:contain;height:39px;width:126px}.festive-nav nav{display:flex;gap:28px;align-items:center;font-size:14px}.festive-nav a{text-decoration:none}.nav-enquire{border-bottom:1px solid #ffd77b;padding-bottom:5px}.festive-nav button{background:#ffffff12;color:white;border:1px solid #ffffff50;border-radius:30px;padding:9px 14px;font-size:12px;cursor:pointer}.festive-hero{min-height:100svh;position:relative;background:#410b28;color:#fff8ed;display:flex;align-items:center;padding:155px 0 105px;isolation:isolate}.hero-art,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-shade{z-index:-1;background:linear-gradient(90deg,#26051ae8 0%,#400921b0 46%,#38072230 100%)}.hero-layout{display:grid;grid-template-columns:1.4fr .8fr;align-items:center;gap:80px}.festival-kicker{text-transform:uppercase;font-size:11px;letter-spacing:.2em;font-weight:700;color:#9d3c40;margin-bottom:22px!important}.hero-copy .festival-kicker{color:var(--gold)}.festival-wish{font-size:14px;letter-spacing:.02em;color:#ffe0b8;margin-bottom:16px!important}.festival h1{font-size:clamp(44px,5.1vw,77px);line-height:1.09;max-width:750px;color:#fff9ed}.hero-description{font-size:16px;max-width:510px;color:#f3dcd9;margin-top:24px!important}.festive-button{display:inline-flex;align-items:center;gap:25px;background:linear-gradient(120deg,#ffe4a3,#f4b94f);color:#451022!important;padding:18px 24px;border-radius:5px;text-decoration:none;font-weight:700;font-size:14px;box-shadow:0 6px 0 #a36326,0 14px 30px #24051d38;transition:transform .2s}.festive-button:hover{transform:translateY(-3px)}.hero-copy .festive-button{margin-top:30px}.hero-fine{font-size:12px;color:#ebccc6;margin-top:23px!important}.offer-sculpture{position:relative;margin-top:100px;padding:34px 30px;background:linear-gradient(135deg,#701a3ddd,#320720ee);border:1px solid #e8b776;border-radius:110px 110px 16px 16px;text-align:center;box-shadow:16px 20px 0 #2b071c85,0 30px 70px #18030a88,inset 0 0 50px #ea9c2c16;transform:perspective(1000px) rotateY(-8deg);transform-style:preserve-3d;transition:transform .2s;backdrop-filter:blur(8px);color:#fff7e5}.offer-ribbon{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:#ffdc92;margin:10px 0 22px}.offer-sculpture p{line-height:1.55;font-size:15px}.offer-sculpture strong{font-weight:500;font-size:20px}.offer-price{font-size:49px;letter-spacing:-.05em;color:#ffe1a0;font-weight:600;line-height:1.2;margin:25px 0}.offer-price span{display:block;font-size:12px;letter-spacing:.04em;color:#ead6cf;margin-top:6px}.offer-rule{height:1px;background:linear-gradient(90deg,transparent,#e7bc76,transparent);margin:22px 0}.offer-sculpture .offer-small{font-size:13px;color:#ebd5c6}.offer-sculpture a{display:inline-block;margin-top:20px;font-size:11px;color:#ffdc92}.sculpture-star{position:absolute;top:-20px;right:5px;font-size:74px;color:#ffdb8f;text-shadow:0 0 30px #f8ae4a}.hero-scroll{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.hero-scroll span{margin-left:20px}.festival-section{padding:100px 0}.festival h2{font-size:clamp(36px,4.3vw,58px);line-height:1.13;color:inherit;margin-bottom:24px}.festival h2 em{color:#b1394d;font-weight:500}.section-intro{display:grid;grid-template-columns:1fr .8fr;column-gap:100px;align-items:center}.section-intro .festival-kicker{grid-column:1/-1}.section-intro>p:last-child{font-size:16px;color:#765565}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.package-grid article{padding:30px 0 5px;border-top:1px solid #b98d775e}.feature-number{font-size:10px;letter-spacing:.12em;color:#a43c50;font-weight:700}.festival h3{font-size:21px;line-height:1.3;font-weight:600;margin:18px 0 14px}.package-grid p,.scope-list p{font-size:14px;color:#765565}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.scope-section{background:#f4e5db}.split-layout>div>p{max-width:510px}.text-link{display:inline-block;margin-top:24px;text-decoration:none;border-bottom:1px solid #af3c50;padding-bottom:5px}.scope-list>div{display:flex;gap:24px;align-items:center;border-bottom:1px solid #b98d775e;padding:17px 0}.scope-list>div>span{font-family:Georgia,serif;font-size:23px;color:#bc7159}.scope-list h3{font-size:16px;margin:0}.scope-list>p{margin-top:24px}.industry-section{background:#fffaf1;text-align:center}.industry-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:35px auto;max-width:950px}.industry-tags span{padding:11px 20px;border:1px solid #e2c9ba;border-radius:40px;font-size:13px}.ads-section{background:radial-gradient(ellipse at 20% 30%,#8b1b50,#3a0a2c 65%);color:#fff2df}.ads-section .festival-kicker{color:#ffc979}.large-copy{font-size:22px;line-height:1.5!important;margin-bottom:18px!important}.ads-section p{color:#eed1d6}.ads-note{border-left:2px solid #efba6f;padding-left:20px;margin-top:26px}.ads-note p{font-size:12px;margin-top:8px}.orb-visual{height:350px;position:relative;display:grid;place-content:center;text-align:center;perspective:700px}.orb-core{width:190px;height:190px;display:grid;place-content:center;font-size:100px;color:#ffe9b7;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffd578,#ba5c21 48%,#51112f 78%);box-shadow:0 0 80px #fa8d3d60,inset -15px -20px 35px #320821}.orb-ring{position:absolute;inset:50px 12px;border:2px solid #ecb66c;border-radius:50%;transform:rotateX(65deg) rotateZ(-25deg);box-shadow:0 0 30px #e5aa603b}.orb-visual>span{margin-top:25px;font-family:Georgia,serif;font-size:24px;color:#ffdea0}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.process-grid b{font-family:Georgia,serif;font-weight:400;font-size:50px;color:#b54652}.process-grid p{font-size:14px;color:#765565}.terms-section{background:#f4e5db}.festival-faq{max-width:900px;margin-top:30px}.festival-faq details{border-bottom:1px solid #cfae9e;padding:23px 0}.festival-faq summary{font-size:17px;font-weight:600;cursor:pointer;line-height:1.5}.festival-faq p{font-size:14px;padding:17px 24px 0 0;color:#6e4e5c}.enquiry-section{background:var(--wine);color:#fff5e5}.enquiry-section .festival-kicker{color:#ffd486}.enquiry-section>div>div>p{color:#f3d7d9}.contact-number{display:block;font-size:24px;text-decoration:none;margin:25px 0}.secondary{margin-bottom:25px}.enquiry-fine{font-size:12px}.festival-form{background:#fff9ef;color:#45132e;padding:32px;border-radius:12px;box-shadow:14px 14px 0 #a44b4a40}.festival .ex-form{margin:0;padding:0;border:0;box-shadow:none;background:transparent}.festival .ex-form h3{font-size:24px;color:#45132e;margin:0 0 10px}.festival .ex-form>p{font-size:13px;color:#735461}.festival .ex-form-grid{gap:15px;margin-top:22px}.festival .ex-form label{font-size:12px;color:#45132e}.festival .ex-form input,.festival .ex-form select,.festival .ex-form textarea{background:#fffdf8;border:1px solid #d9bfb9;color:#40102c;border-radius:5px;padding:12px;width:100%;min-width:0}.festival .ex-form .ex-consent input{width:17px;height:17px;flex-shrink:0}.festival .ex-form .ex-consent{align-items:flex-start;line-height:1.5;margin:18px 0}.festival .ex-form .ex-button{background:#80233f;color:white;width:100%;border-radius:5px;padding:15px;white-space:normal}.festival .ex-status.error{color:#a51e28}.festival .ex-status.success{color:#176337}.festival-footer{background:#2b071f;color:#dcbfc4;padding:26px 0 40px;font-size:11px}.festival-footer .festive-wrap{display:flex;flex-wrap:wrap;gap:20px;align-items:center}.festival-footer span{margin-right:auto}.festival-footer button{background:none;color:inherit;border:0;cursor:pointer}.diya-border{position:fixed;top:130px;bottom:100px;z-index:15;display:flex;flex-direction:column;justify-content:space-around;width:46px;pointer-events:none}.diya-border.left{left:12px}.diya-border.right{right:12px}.diya{position:relative;display:block;width:40px;height:47px;filter:drop-shadow(0 0 9px #f2b23275)}.bowl{position:absolute;width:40px;height:18px;bottom:0;border-radius:3px 3px 24px 24px;background:linear-gradient(#f9b853 0 12%,#b95425 20%,#772d20);box-shadow:inset 0 -4px 6px #49121a80;border-top:2px solid #ffdc72}.flame{position:absolute;width:13px;height:25px;bottom:16px;left:14px;border-radius:75% 15% 65% 35%;background:radial-gradient(ellipse at 45% 70%,white 0 12%,#ffeb80 20%,#ffab16 60%,#ef6326 85%);transform:rotate(-12deg);transform-origin:bottom;animation:diya-flicker 1.7s ease-in-out infinite alternate;box-shadow:0 0 18px #f6b73588}.diya-border .diya:nth-child(even) .flame{animation-delay:-.8s}.diya-loader{display:none}.festival.js-effects .diya-loader{position:fixed;inset:0;z-index:10000;background:#350921;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:35px;color:#ffdb97;font-size:12px;letter-spacing:.12em;animation:loader-exit .4s 1.3s forwards;pointer-events:none}.diya-loader .diya{transform:scale(1.7)}#festive-fireworks{position:fixed;inset:0;width:100%;height:100%;z-index:25;pointer-events:none}.festive-mobile{display:none}.effects-paused .flame{animation:none}.festival a:focus-visible,.festival button:focus-visible,.festival summary:focus-visible{outline:3px solid #e0a63c;outline-offset:5px}.festival-education .hero-shade{background:linear-gradient(90deg,#240629ee,#490d45ae 50%,#4c133c30)}
@keyframes diya-flicker{0%{transform:rotate(-12deg) scale(1)}100%{transform:rotate(-5deg) scale(.93,1.07)}}@keyframes loader-exit{to{opacity:0;visibility:hidden}}
@media(max-width:1050px){.festive-wrap{width:calc(100% - 120px)}.festive-nav{padding:18px 60px}.hero-layout{gap:40px;grid-template-columns:1.25fr .85fr}.offer-sculpture{padding:30px 20px}.offer-price{font-size:40px}.split-layout{gap:40px}.section-intro{column-gap:40px}.festive-nav nav{gap:18px}.festival h1{font-size:54px}}
@media(max-width:760px){.festive-wrap{width:calc(100% - 64px)}.festive-nav{padding:15px 26px;gap:10px}.festive-brand{padding:5px 7px}.festive-brand img{width:106px;height:34px}.festive-nav nav>a:not(.nav-enquire){display:none}.festive-nav nav{font-size:12px}.festive-nav button{font-size:10px;padding:7px 9px}.festive-hero{padding:130px 0 70px;min-height:100svh}.hero-art{object-position:64% center}.hero-shade{background:linear-gradient(180deg,#29071edb,#35081ec4 65%,#35081eeb)}.hero-layout{display:block}.festival h1{font-size:clamp(38px,9.5vw,58px);max-width:570px}.hero-copy .festival-kicker{font-size:9px;letter-spacing:.14em}.festival-wish{font-size:12px}.hero-description{font-size:14px;max-width:500px}.festive-button{font-size:12px;padding:16px 18px;gap:12px}.hero-fine{font-size:10px}.offer-sculpture{margin:42px 0 0;padding:25px 24px;border-radius:45px 45px 10px 10px;max-width:400px;transform:none;text-align:left;display:grid;grid-template-columns:1fr 1fr;column-gap:16px;box-shadow:8px 10px 0 #26061e70}.offer-ribbon{grid-column:1/-1;margin:0 0 15px}.offer-sculpture strong{font-size:16px}.offer-sculpture p{font-size:12px}.offer-price{font-size:36px;margin:0;align-self:center}.offer-rule{grid-column:1/-1;margin:17px 0}.offer-sculpture a{margin:0;align-self:center;line-height:1.6}.offer-sculpture .offer-small{font-size:11px}.sculpture-star{font-size:50px;top:-18px}.hero-scroll{display:none}.festival-section{padding:65px 0}.section-intro,.split-layout{display:block}.section-intro>p:last-child{font-size:14px}.package-grid,.process-grid{grid-template-columns:1fr;gap:25px;margin-top:25px}.package-grid article{padding-top:22px}.festival h3{font-size:20px}.scope-list{margin-top:30px}.industry-tags{gap:8px;margin:25px 0}.industry-tags span{font-size:11px;padding:9px 13px}.industry-section p{font-size:14px}.orb-visual{height:260px;margin-bottom:35px}.orb-core{height:140px;width:140px;font-size:70px}.orb-ring{inset:35px 0}.large-copy{font-size:20px}.process-grid article{display:grid;grid-template-columns:48px 1fr;gap:0 15px}.process-grid b{grid-row:1/3;font-size:32px}.process-grid h3{margin:0 0 10px}.process-grid p{grid-column:2}.festival-faq summary{font-size:15px}.festival-form{padding:24px 19px;margin-top:35px}.festival .ex-form-grid{grid-template-columns:1fr}.festival .ex-form-grid label{grid-column:1}.diya-border{width:20px;top:100px;bottom:150px}.diya-border.left{left:3px}.diya-border.right{right:3px}.diya-border .diya{transform:scale(.45);transform-origin:left center}.diya-border .diya:nth-child(even){display:none}.festive-mobile{display:grid;grid-template-columns:1fr 1fr 1.3fr;position:fixed;bottom:0;left:0;right:0;z-index:50;background:#fff7e6;padding:8px 10px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -2px 15px #24051d25;gap:8px}.festive-mobile a{font-size:12px;font-weight:600;text-align:center;padding:12px 4px;text-decoration:none;color:#511831}.festive-mobile a:last-child{background:#78233f;border-radius:4px;color:white}.festival-footer{padding-bottom:95px}.festival .ex-contact-float{bottom:82px;right:26px}.festival .ex-assistant{bottom:145px}.festival .ex-cookie{bottom:76px;max-width:calc(100% - 48px);left:24px;right:24px}.festival-footer .festive-wrap{gap:14px}.festival-footer span{width:100%}.festival-education .hero-shade{background:linear-gradient(180deg,#240629e8,#490d45b8 60%,#300920ed)}}
@media(prefers-reduced-motion:reduce){.festival *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.festival.js-effects .diya-loader,#festive-fireworks{display:none!important}.offer-sculpture{transform:none!important}}
