@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--orange:#f85a20;--ink:#161714;--paper:#f2f1e9;--muted:#aaa99e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}header{height:110px;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);border-bottom:1px solid #41423b}.brand{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:33px;font-weight:900;line-height:.82;letter-spacing:-1px;display:block}.brand-bottom{display:block;font-size:40px}.brand-dot{color:var(--orange);font-size:15px;vertical-align:top;margin-left:4px}nav{display:flex;gap:36px;font-size:14px}nav a:hover,.text-link:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--orange);color:var(--ink);padding:19px 24px;font-weight:700;border:0;cursor:pointer;transition:background .2s}.button:hover{background:#ff7948}.button.small{font-size:14px;padding:15px 20px}.plus{font-size:24px;font-weight:400;line-height:1}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:730px;background:var(--ink);color:var(--paper)}.hero-copy{padding:54px 8% 36px 9.5%}.eyebrow{font-size:13px;font-weight:700;letter-spacing:1.6px;margin:0 0 28px}.spark{color:var(--orange);font-size:25px;vertical-align:middle;margin-right:9px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:800;letter-spacing:-1.7px;line-height:.91}h1{font-size:clamp(70px,7.6vw,119px);margin:0 0 26px}h1 span{color:var(--orange)}.hero-desc{font-size:16px;color:#c7c8bc;line-height:1.7;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:24px}.text-link{font-size:14px;border-bottom:1px solid;padding-bottom:5px}.hero-notes{display:flex;gap:28px;margin-top:45px;font-size:11px;letter-spacing:1px;color:#b2b3a7}.hero-visual{position:relative;min-height:100%;overflow:hidden;background:#252620}.hero-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;filter:brightness(.88)}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111a 0%,transparent 50%)}.image-caption{position:absolute;bottom:40px;left:38px;right:38px;z-index:1;display:flex;justify-content:space-between;align-items:end;font-size:12px;letter-spacing:1px;line-height:1.5}.image-caption>span:first-child{font-family:'Barlow Condensed',Impact,sans-serif;font-size:27px;font-weight:700;line-height:1}.round-stamp{position:absolute;z-index:1;top:36px;right:30px;border-radius:50%;width:152px;height:152px;background:var(--orange);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);font-size:11px;font-weight:700;line-height:1.4}.round-stamp b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:34px;line-height:.88;margin:10px 0}.round-stamp span{font-size:9px;letter-spacing:1px}.ticker{background:var(--orange);padding:18px 0;overflow:hidden;white-space:nowrap;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-family:'Barlow Condensed',Impact,sans-serif;font-size:28px;font-weight:700;letter-spacing:1px}.ticker div{width:max-content}.ticker span{margin:0 38px}.wrap{max-width:1400px;margin:auto;padding:100px 5%}.story{display:grid;grid-template-columns:.95fr 1fr;gap:9%;align-items:center}.story-image{position:relative;aspect-ratio:1/1;background:#ddd7c9;overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover;image-rendering:auto}.image-label{position:absolute;left:0;bottom:0;background:var(--orange);padding:18px 22px;font-size:11px;font-weight:700;letter-spacing:1px}h2{font-size:clamp(46px,4.7vw,72px);margin-bottom:30px}em{font-style:normal;color:var(--orange)}.story-copy>p:not(.eyebrow){line-height:1.8;color:#62635b;max-width:510px}.story-facts{display:flex;justify-content:space-between;border-top:1px solid #c5c6bb;padding-top:26px;margin-top:35px;gap:12px}.story-facts b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:46px;display:block}.story-facts span{font-size:10px;font-weight:700;letter-spacing:1px}.packages{padding-top:20px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-head>p{color:#62635b;line-height:1.7;font-size:15px;margin-bottom:32px}.included{display:flex;gap:26px;align-items:center;border-top:1px solid #c5c6bb;border-bottom:1px solid #c5c6bb;padding:21px 0;font-size:13px;margin:18px 0 30px}.included>span{font-size:11px;letter-spacing:1px;margin-right:auto}.package-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #c5c6bb}.package{padding:24px 19px;display:flex;flex-direction:column;min-width:0;border-right:1px solid #c5c6bb;background:#f7f6ee}.package:last-child{border:0}.package.featured{background:var(--ink);color:var(--paper)}.package-top{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:32px}.package-top>span:last-child{color:#808176}.package h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:57px;letter-spacing:-1.5px;margin-bottom:12px;font-weight:700;white-space:nowrap}.package h3 small{font:600 14px 'DM Sans',sans-serif;margin-right:3px;letter-spacing:0}.package>p{font-size:17px;font-weight:600;margin-bottom:9px}.package-detail{font-size:12px;color:#74766c;line-height:1.8;min-height:57px;margin-bottom:28px}.package-detail strong{color:var(--orange);font-weight:600}.featured .package-detail{color:#b5b6ab}.select-package{display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid #b5b6ab;background:transparent;padding:13px 12px;font-size:13px;font-weight:700;color:inherit;cursor:pointer;margin-top:auto}.select-package:hover{background:var(--orange);border-color:var(--orange);color:var(--ink)}.select-package span{font-size:19px}.featured button{background:var(--orange);color:var(--ink);border-color:var(--orange)}.package-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:24px}.package-footer p{margin:0;font-size:12px;color:#686b5f}.occasion{background:var(--orange)}.occasion .wrap{padding-top:75px;padding-bottom:75px}.occasion h2 span{color:var(--paper)}.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;gap:50px}.occasion-grid>div{border-top:1px solid #923b20;padding-top:24px}.occasion-grid span{font-size:12px}.occasion-grid h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:32px;text-transform:uppercase;margin:16px 0}.occasion-grid p{font-size:14px;line-height:1.7;max-width:280px}.booking{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.steps{padding:0;list-style:none;margin:35px 0}.steps li{display:flex;gap:23px;border-top:1px solid #c5c6bb;padding-top:21px;margin-bottom:22px}.steps li>span{color:var(--orange);font-family:'Barlow Condensed',Impact,sans-serif;font-size:25px}.steps h3{font-size:16px;margin-bottom:6px}.steps p{color:#696d60;font-size:14px;line-height:1.6;margin-bottom:0}.phone{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:42px;font-weight:700}.secondary-phone{display:block;font-size:13px;margin-top:9px;text-decoration:underline}form{background:var(--ink);color:var(--paper);padding:36px}.form-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:1px;margin-bottom:26px}.form-head span:last-child{color:var(--orange);font-size:30px}form h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:36px;line-height:1.05;margin-bottom:28px;font-weight:600}label{display:block;font-size:13px;margin:16px 0 8px}label span{color:#93978a}input,select,textarea{width:100%;background:#252720;border:1px solid #505346;color:var(--paper);padding:13px;border-radius:0;font-size:14px;min-height:46px;color-scheme:dark}input:focus,select:focus,textarea:focus{outline:1px solid var(--orange);border-color:var(--orange)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#a0a294}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}form>.button{width:100%;margin-top:24px;font-size:14px}.form-note{font-size:11px;line-height:1.7;color:#a2a697;margin:16px 0 0}.faq{padding-top:0;padding-bottom:80px}.faq .eyebrow{margin-bottom:25px}details{border-top:1px solid #c5c6bb;padding:22px 0}details:last-child{border-bottom:1px solid #c5c6bb}summary{cursor:pointer;font-weight:600;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:15px}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--orange);font-size:24px}details[open] summary:after{content:'−'}details p{max-width:820px;margin:18px 0 0;color:#65695c;line-height:1.8;font-size:14px}footer{background:var(--ink);color:var(--paper);padding:50px 5% 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:45px}.footer-top p{font-family:'Barlow Condensed',Impact,sans-serif;font-size:37px;font-weight:600;line-height:1;margin:0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #45473e;padding-top:24px;color:#a9ac9c;font-size:10px;letter-spacing:1px}
@media(min-width:1500px){.hero-copy{padding-left:max(9.5%,calc((100vw - 1260px)/2))}.hero{min-height:830px}}@media(max-width:1100px){.hero{min-height:660px}.hero-copy{padding-top:40px}h1{font-size:84px}.hero-actions{align-items:start;flex-direction:column;gap:18px}.hero-notes{gap:12px;margin-top:28px;font-size:9px}.round-stamp{width:125px;height:125px}.package{padding:20px 13px}.package h3{font-size:46px}.package-top{font-size:10px}.included{gap:15px}.booking{gap:5%}form{padding:28px}}@media(max-width:760px){header{height:85px;padding:17px 5%}.brand{font-size:26px}.brand-bottom{font-size:31px}nav{display:none}.button.small{padding:12px 16px;font-size:12px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:38px 6% 34px}h1{font-size:clamp(76px,16vw,114px)}.eyebrow{font-size:11px;margin-bottom:24px}.hero-desc{font-size:15px}.hero-actions{flex-direction:row;align-items:center;gap:20px}.hero-actions .button{font-size:13px;padding:17px 19px;gap:15px}.hero-actions .text-link{font-size:12px}.hero-notes{font-size:9px;justify-content:space-between}.hero-visual{min-height:400px}.round-stamp{right:25px;top:24px}.image-caption{left:24px;right:24px;bottom:25px}.ticker{font-size:23px;padding:15px 0}.ticker span{margin:0 24px}.wrap{padding:65px 6%}.story{grid-template-columns:1fr;gap:35px}.story-image{aspect-ratio:1.15/1;max-height:430px}.story-copy h2{font-size:56px}.story-copy>p:not(.eyebrow){font-size:15px}.story-facts span{font-size:9px}.story-facts b{font-size:40px}.packages{padding-top:10px}.section-head{display:block}h2{font-size:50px;letter-spacing:-1px}.section-head>p{font-size:14px}.included{flex-wrap:wrap;gap:12px 20px;font-size:12px}.included>span{width:100%;font-size:10px}.package-grid{grid-template-columns:1fr 1fr;gap:14px;border:0}.package{border:1px solid #c5c6bb;padding:23px 17px}.package:last-child{grid-column:1/-1;border:1px solid #c5c6bb}.package h3{font-size:54px}.package-top{font-size:11px;margin-bottom:22px}.package-detail{font-size:12px;margin-bottom:20px}.package-footer{align-items:start;flex-direction:column;gap:17px}.package-footer p{font-size:12px;line-height:1.8}.occasion .wrap{padding:58px 6%}.occasion-grid{grid-template-columns:1fr;gap:20px;margin-top:35px}.occasion-grid>div{position:relative;padding-left:50px;padding-top:18px}.occasion-grid span{position:absolute;left:0;top:25px}.occasion-grid h3{margin-top:0;font-size:29px}.occasion-grid p{max-width:100%;margin-bottom:0}.booking{grid-template-columns:1fr;gap:40px}.booking-copy h2{font-size:56px}.phone{font-size:38px}form{padding:26px 22px}.form-row{gap:12px}form h3{font-size:34px}label{font-size:12px}input,select,textarea{font-size:16px}form>.button{font-size:13px}.faq{padding-top:0;padding-bottom:58px}summary{font-size:14px}details p{font-size:14px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top p{font-size:30px}.footer-top>.button{width:100%;font-size:14px}.footer-bottom{flex-direction:column;gap:12px;font-size:10px}footer{padding:35px 6% 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Supplied logo: frame only the circular mark within the original screenshot. */
.logo-brand{display:block;flex-shrink:0;line-height:1}.logo-image{display:block;width:80px;height:80px;border-radius:50%;background-image:url("assets/logo-original.jpg");background-repeat:no-repeat;background-size:142.0673% auto;background-position:50% 50.1157%}header{height:118px}footer .logo-image{width:112px;height:112px}@media(max-width:760px){header{height:96px;padding-top:12px;padding-bottom:12px}.logo-image{width:72px;height:72px}footer .logo-image{width:96px;height:96px}}

.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}

/* Responsive controls and narrow-screen layout. */
.hero-copy,.story-copy,.booking>*,.form-row>*,.steps li>div{min-width:0}
input,select,textarea{min-width:0;max-width:100%}
.select-package,.button.small{min-height:44px}
@media(max-width:760px){.hero-actions{flex-wrap:wrap}.form-note{font-size:12px}.image-label{max-width:100%;line-height:1.5}}
@media(max-width:380px){h1{font-size:clamp(62px,20vw,76px)}.story-copy h2,.booking-copy h2{font-size:48px}.form-row{grid-template-columns:1fr;gap:0}.package-grid{gap:10px}.package{padding:20px 12px}.package h3{font-size:46px}.package-top{font-size:10px}.hero-notes{flex-wrap:wrap;gap:12px}.story-facts{gap:8px}.story-facts span{letter-spacing:.4px}.form-head{letter-spacing:.5px}form h3{font-size:30px}}

/* Continuous event ribbon; duplicate groups make the loop seamless. */
.ticker .ticker-track{display:flex;width:max-content;animation:event-scroll 28s linear infinite;will-change:transform}
.ticker .ticker-group{display:flex;flex:none;align-items:center;width:auto}
.ticker .ticker-item{display:flex;align-items:center;flex:none;margin:0;gap:32px;padding-right:32px}
.ticker .ticker-star{font-family:Arial,sans-serif;font-size:24px;line-height:1;margin:0;flex:none}
@keyframes event-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* Border/padding live on a wrapper: iOS date/time fields mis-size padded 100% inputs. */
.native-field{width:100%;min-width:0;max-width:100%;padding:13px;background:#252720;border:1px solid #505346;min-height:48px}
.native-field:focus-within{border-color:var(--orange);outline:1px solid var(--orange)}
.native-field input[type=date],.native-field input[type=time]{display:block;appearance:none;-webkit-appearance:none;width:100%;min-width:0;max-width:100%;margin:0;padding:0;border:0;border-radius:0;min-height:24px;height:24px;background:transparent;line-height:24px;box-sizing:border-box;text-align:left;outline:none}
.native-field input::-webkit-date-and-time-value{text-align:left;min-height:24px}
.native-field input::-webkit-datetime-edit{min-width:0;padding:0}
.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.form-row{grid-template-columns:minmax(0,1fr);gap:0}#booking-form{width:100%;max-width:100%;min-width:0}.native-field{min-height:50px}.ticker .ticker-item{gap:24px;padding-right:24px}.ticker .ticker-star{font-size:21px}}
@media(prefers-reduced-motion:reduce){.ticker .ticker-track{animation:none;transform:none}}

/* Real booth photography: one feature image and four supporting frames. */
.event-gallery{padding-top:85px;padding-bottom:20px}
.event-gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px;align-items:stretch}
.event-photo{margin:0;min-width:0;display:grid;grid-template-rows:minmax(0,1fr) auto;background:#f7f6ee;border:1px solid #c5c6bb}
.event-photo-frame{position:relative;min-width:0;overflow:hidden;aspect-ratio:3/4;background:#ddd7c9}
.event-photo-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.event-photo-featured{grid-row:span 2}
.event-photo-featured .event-photo-frame{aspect-ratio:auto;min-height:0}
.event-photo figcaption{display:flex;align-items:center;gap:12px;padding:15px 16px;font-size:12px;font-weight:600;line-height:1.5}
.event-photo figcaption span{font-family:'Barlow Condensed',Impact,sans-serif;font-size:20px;color:var(--orange)}
@media(max-width:1000px){.event-gallery-grid{grid-template-columns:1.6fr 1fr 1fr;gap:12px}.event-photo figcaption{padding:12px;font-size:11px}}
@media(max-width:760px){.event-gallery{padding-top:58px;padding-bottom:0}.event-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.event-photo-featured{grid-row:auto;grid-column:1/-1}.event-photo-featured .event-photo-frame{aspect-ratio:3/4}.event-photo figcaption{gap:8px;padding:12px;font-size:11px}.event-gallery .section-head>p{font-size:14px}}

/* Authentic booth collage, kept complete at every screen size. */
.story-image.story-collage{max-height:none;aspect-ratio:auto;overflow:visible;background:var(--ink);padding:9px;box-shadow:10px 10px 0 #e3dfd2;border:1px solid #36372e}
.story-collage img{display:block;width:100%;height:auto;object-fit:contain}
.story-collage .image-label{position:static;display:block;margin-top:9px;padding:17px 18px;line-height:1.6;font-size:10px;letter-spacing:1.1px}
@media(max-width:760px){.story-image.story-collage{padding:6px;box-shadow:6px 6px 0 #e3dfd2}.story-collage .image-label{margin-top:6px;padding:14px 13px;font-size:10px}}

/* Full-width landscape artwork retains its complete composition. */
.story.story-landscape{grid-template-columns:minmax(0,1fr);gap:48px}
.story-landscape .story-image{padding:7px;box-shadow:8px 8px 0 #e3dfd2}
.story-landscape .story-copy{width:100%;max-width:900px;margin:auto;text-align:center}
.story-landscape .story-copy>p:not(.eyebrow){max-width:740px;margin-left:auto;margin-right:auto}
.story-landscape .story-copy h2{font-size:clamp(44px,5vw,72px)}
@media(max-width:760px){.story.story-landscape{gap:34px}.story-landscape .story-image{padding:4px;box-shadow:4px 4px 0 #e3dfd2}.story-landscape .story-copy{text-align:left}}

/* Edge-to-edge banner fading into the story background. */
.story.story-landscape{max-width:none;padding:0 0 80px;gap:32px}
.story-landscape .story-image.story-collage{padding:0;border:0;box-shadow:none;background:var(--paper);overflow:hidden}
.story-landscape .story-image::after{content:'';position:absolute;left:0;right:0;bottom:0;height:16%;pointer-events:none;background:linear-gradient(to bottom,rgba(242,241,233,0),rgba(242,241,233,.3) 45%,var(--paper) 100%)}
.story-landscape .story-copy{padding:0 5%;max-width:1000px}
@media(max-width:760px){.story.story-landscape{padding-bottom:58px;gap:26px}.story-landscape .story-copy{padding:0 6%}}

#event-other-field[hidden]{display:none}

#event-other-field label{margin-top:0}#event-other-field input{margin-bottom:0}
#event-other-field{padding-top:8px}

.transport-terms{padding-top:0;padding-bottom:60px}.transport-card{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;padding:40px;border:1px solid #c5c6bb;border-top:4px solid var(--orange);background:#faf9f2}.transport-card h2{font-size:clamp(42px,4vw,62px);margin-bottom:0}.transport-copy>p{line-height:1.75;color:#62635b}.transport-copy .transport-fee{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;font-size:56px;color:var(--ink);line-height:1;margin-bottom:20px}.transport-fee span{font-family:'DM Sans',Arial,sans-serif;font-size:13px;font-weight:500;margin-left:10px}.transport-copy .transport-area{margin-bottom:0;border-top:1px solid #deded4;padding-top:16px}.transport-link{display:inline-block;margin-top:8px}.transport-link:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@media(max-width:760px){.transport-terms{padding-bottom:40px}.transport-card{grid-template-columns:minmax(0,1fr);gap:26px;padding:26px 22px}.transport-copy>p{font-size:14px}.transport-card .eyebrow{margin-bottom:20px}}

.form-transport-terms{margin:12px 0 24px;padding:18px;border:1px solid #4b4c40;border-left:3px solid var(--orange);background:#22231e}.form-transport-terms h4{margin:0 0 10px;color:var(--orange);font-size:14px}.form-transport-terms p{margin:0 0 8px;font-size:13px;line-height:1.65;color:#c7c8bc}.form-transport-terms p:last-child{margin-bottom:0}
