/* The Dream Bar — refined company brand system. */
:root{--ink:#243B20;--forest:#243B20;--olive:#596F3C;--light-olive:#DCE3D3;--pink:#E8B2B0;--pale-pink:#F4E2E4;--cream:#FDFDF5;--paper:#FFFFFF;--muted:#586251;--line:#D4DACD;--serif:Georgia,'Times New Roman',serif}
body{font-family:Arial,sans-serif;background:var(--cream);color:var(--ink)}
::selection{background:var(--forest);color:var(--cream)}
h1,h2,h3,.brand>span,.footer-brand{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}
.site-header{border-bottom:1px solid var(--line);background:var(--cream)}
.brand img{border-radius:10px;background:var(--forest);width:48px;height:48px;object-fit:contain}
.brand>span{font-weight:400;font-size:31px}.brand small{font-family:Arial,sans-serif;font-size:8px;letter-spacing:.07em;margin-top:7px}
.header-contact{box-shadow:none;border:1px solid var(--forest);background:var(--pink)}
.button{box-shadow:none;border:1px solid var(--forest);border-radius:6px;font-family:Arial,sans-serif;letter-spacing:.06em}
.button:hover{box-shadow:none;transform:translateY(-2px)}.button-dark:hover{background:#354C2C}
.hero{grid-template-columns:.85fr 1.15fr;gap:40px;padding-block:65px 72px}
.hero h1{font-size:clamp(52px,5.7vw,82px);line-height:1.03;letter-spacing:-.05em}.hero h1 em{color:var(--forest)}
.hero .eyebrow{font-size:10px;line-height:1.6}.hero-intro{font-size:16px;line-height:1.85}
.hero-visual.brand-hero-art{background:var(--cream);border:0;border-radius:0;padding:0;box-shadow:none;transform:none;overflow:visible;min-width:0}
.company-logo{display:block;width:100%;height:auto;object-fit:contain;position:static;max-width:100%}
.brand-art-caption{border-top:1px solid var(--line);margin:22px 7% 0;padding-top:18px;text-align:center;font:italic 17px/1.5 Georgia,serif}
.party-ribbon{transform:none;margin:0;border-block:1px solid var(--forest);font-size:11px;gap:28px}
.retro-bar-photo{border:1px solid var(--forest);background:var(--pink)}
.retro-bar:nth-child(2){padding-top:0}.retro-bar-photo,.bus .retro-bar-photo{aspect-ratio:4/4.6;border-radius:180px 180px 8px 8px}.bus .retro-bar-photo img{transform:none}
.retro-bar h3{display:flex;align-items:center;gap:12px;font-size:36px;letter-spacing:-.04em}.bar-illustration{width:64px;height:64px;object-fit:contain;flex:none}
.retro-contact-strip{border-block:1px solid var(--line);background:var(--pale-pink)}.contact-cosmo{display:block;margin:0 auto 22px}.retro-contact-strip h2{font-weight:400}
.estimate-panel,.estimate-card{box-shadow:none;border:1px solid var(--forest)}.bar-choice input:checked+.bar-choice-body{box-shadow:none}.availability-note{color:#495E39}
.included-section{border-block:1px solid var(--forest)}.inclusions-grid article,.dry-hire-banner{border-color:#BC9090}
.collaboration-section{border:1px solid var(--line)}.site-footer{background:var(--forest)}.footer-bottom{border-color:#6C7B5F}
:focus-visible{outline:3px solid #9B5D35;outline-offset:4px}
@media(max-width:1100px){.hero{gap:25px}.hero h1{font-size:64px}.site-header nav{border-top:1px solid var(--line)}}
@media(max-width:760px){header.site-header .brand img{width:38px;height:38px;border-radius:7px}header.site-header .brand>span{font-size:24px}header.site-header .brand small{font-size:6px;letter-spacing:.03em}header.site-header .header-contact{box-shadow:none}.hero{grid-template-columns:1fr;gap:32px;padding-block:36px 45px}.hero h1{font-size:clamp(49px,12vw,74px);line-height:1.03}.hero .eyebrow{font-size:9px}.hero-visual.brand-hero-art{margin:0;padding:0;max-width:600px}.brand-art-caption{font-size:15px;margin-top:18px;padding-top:15px}.retro-section-head h2{font-size:48px}.retro-bar h3{font-size:36px}.retro-contact-strip h2{font-size:58px}.party-ribbon{gap:22px}.hero-intro{font-size:16px}.mobile-estimate{background:var(--forest);color:var(--cream)}.mobile-estimate strong,.mobile-estimate>a>span:first-child{color:var(--cream)}.mobile-estimate>a>span:last-child{color:var(--forest);border:0;padding:10px 13px;border-radius:4px}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}

/* Responsive refinement: intentional spacing, authentic photo proportions and a complete mobile menu. */
.page-width{width:min(1200px,calc(100% - 64px))}
main>section{scroll-margin-top:24px}p{line-height:1.7}
.site-header{position:relative;z-index:20;gap:24px;padding:20px max(24px,4vw)}
.site-header nav{gap:24px}.mobile-navigation{display:none}
.hero{grid-template-columns:.9fr 1.1fr;gap:36px;padding-block:48px 56px}
.hero h1{font-size:clamp(48px,5.3vw,74px);line-height:1.05;margin-bottom:24px}
.hero .eyebrow{margin-bottom:20px}.hero-intro{font-size:17px;line-height:1.7;margin-bottom:24px;max-width:460px}
.hero-actions{gap:18px}.hero-promise{margin-top:18px}.brand-art-caption{margin-top:16px;padding-top:14px}
.retro-collection{padding-block:64px}.retro-section-head{grid-template-columns:1.1fr 1fr;gap:18px 64px;margin-bottom:32px}.retro-section-head h2{font-size:clamp(40px,4.8vw,64px)}
.retro-bars{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px;align-items:start}
.retro-bar{min-width:0;padding:0!important}.retro-bar.mini{order:1}.retro-bar.cart{order:2}.retro-bar.bus{order:3;grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;border-top:1px solid var(--line);padding-top:36px!important}
.retro-bar-photo,.bus .retro-bar-photo{aspect-ratio:1;border:0;border-radius:10px;max-height:none;background:transparent;isolation:isolate}
.retro-bar-photo img{width:100%;height:100%;object-fit:cover;transform:none}.mini .retro-bar-photo img{object-position:50% 40%}.cart .retro-bar-photo img{object-position:center}
.bus .retro-bar-photo{aspect-ratio:1024/449;align-self:center}.bus .retro-bar-photo img{object-fit:contain}
.retro-bar-photo span{position:static;display:block;padding:10px 14px;font-size:10px;letter-spacing:.07em;background:var(--forest)}
.retro-bar-photo{overflow:visible;aspect-ratio:auto;display:flex;flex-direction:column}.retro-bar-photo img{aspect-ratio:1;height:auto;border-radius:10px 10px 0 0}.bus .retro-bar-photo img{aspect-ratio:1024/449}.retro-bar-photo span{border-radius:0 0 6px 6px}
.bar-copy{padding-top:18px}.bus .bar-copy{padding-top:0}.retro-bar h3{font-size:34px;margin:0 0 12px;gap:10px}.bar-illustration{width:48px;height:48px}
.bar-copy>p{font-size:15px;line-height:1.7;margin-bottom:14px}.bar-copy .retro-rate{font-size:23px;line-height:1.45;margin-bottom:8px}.retro-rate small{font-size:13px;line-height:1.6}.bar-copy .retro-availability{font-size:13px!important;min-height:0;margin-bottom:6px}.retro-link{min-height:44px;font-size:12px;letter-spacing:.04em}.retro-collection-note{font-size:14px;line-height:1.7;margin-top:32px;padding-top:22px;max-width:none}
.retro-contact-strip{padding:40px 24px}.contact-cosmo{width:64px;height:64px;margin-bottom:12px}.retro-contact-strip .eyebrow{margin-bottom:12px}.retro-contact-strip h2{font-size:56px;line-height:1.05}.retro-contact-strip>p:not(.eyebrow){margin:18px auto;font-size:16px}.retro-contact-strip .retro-link{margin-top:12px}
.builder-section,.cost-guide,.faq-section{padding-block:64px}.included-section,.planning-section,.inquiry-section,.booking-section{padding-block:64px}.section-heading{margin-bottom:30px}.section-heading h2,.inquiry-heading h2{font-size:clamp(40px,4.8vw,60px)}
.section-heading>p{font-size:16px;line-height:1.75}.builder-route{gap:12px}.builder-route a{padding:14px;font-size:13px}.builder-step{padding:24px;margin-bottom:24px}.builder-step legend{font-size:28px}.step-help,.field-help,.guidance,.check-choice small{font-size:14px;line-height:1.65}.field{font-size:15px}.field input,.field select,.field textarea,.currency-input input{font-size:16px;min-height:48px}.check-choice strong{font-size:14px}.bar-choice-body{min-width:0}.choice-description,.availability-note{font-size:13px}
.inclusions-grid p,.planning-list p,.staffing-note p,.booking-steps span,.payment-details p{font-size:15px;line-height:1.75}.faq-group summary,.faq-group details>p{font-size:16px;line-height:1.65}.faq-group>div:first-child>p:last-child{font-size:14px}.form-guide p{font-size:15px;line-height:1.75}.inquiry-disclosure{font-size:13px}.direct-contact,.direct-contact span{font-size:14px}.footer-grid>div:nth-child(2)>a{font-size:14px}.estimate-items{font-size:14px}.estimate-meta{font-size:13px}.estimate-total>small,.estimate-fine,.handoff-note{font-size:12px;line-height:1.65}.quote-pending ul,.deposit-preview{font-size:13px}.estimate-card{max-height:none;overflow:visible}
@media(max-width:1000px){.site-header{flex-wrap:wrap;gap:16px}.site-header>nav{gap:22px;padding-top:12px}.hero h1{font-size:54px}.builder-layout{grid-template-columns:minmax(0,1fr) 320px;gap:24px}.hero-intro{font-size:16px}}
@media(max-width:900px){.site-header,header.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px 20px}.site-header>nav,.site-header>.header-contact{display:none!important}.mobile-navigation{display:block;border:0;margin:0;padding:0;position:static}.mobile-navigation summary{list-style:none;display:flex;gap:10px;align-items:center;justify-content:center;border:1px solid var(--forest);border-radius:5px;min-height:44px;padding:9px 13px;font:700 13px/1 Arial,sans-serif}.mobile-navigation summary::-webkit-details-marker{display:none}.mobile-navigation summary:after{display:none}.mobile-navigation[open] summary{background:var(--forest);color:var(--cream)}.mobile-navigation nav{position:absolute;top:100%;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:0;padding:12px 20px 18px;background:var(--cream);border-block:1px solid var(--line);box-shadow:0 12px 18px #243b2012;z-index:25}.mobile-navigation nav a{display:flex;align-items:center;min-height:48px;padding:10px;font-size:14px;text-decoration:none;white-space:normal}.mobile-navigation nav a:hover{background:var(--pale-pink)}.mobile-navigation:not([open]) nav{display:none}.site-header .brand{gap:10px;min-width:0}.site-header .brand>span{font-size:27px}.site-header .brand small{font-size:7px;letter-spacing:.05em}.site-header .brand img{width:42px;height:42px}.builder-layout{grid-template-columns:1fr}.estimate-card{position:static;margin-top:4px}.section-heading{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:760px){.page-width{width:calc(100% - 40px)}.announcement{font-size:9px;line-height:1.6;padding:9px 20px;letter-spacing:.08em}header.site-header .brand>span{font-size:24px}header.site-header .brand small{font-size:6px;margin-top:5px}header.site-header .brand img{width:36px;height:36px}.hero{display:flex;flex-direction:column;gap:22px;padding-block:24px 36px}.hero-visual.brand-hero-art{order:0;width:min(100%,360px);margin:0 auto;max-width:none}.brand-art-caption{display:none}.hero-copy{order:1;width:100%}.hero .eyebrow{font-size:10px;margin-bottom:12px}.hero h1{font-size:clamp(39px,10.5vw,56px);line-height:1.06;margin-bottom:18px}.hero-intro{font-size:16px;line-height:1.65;margin-bottom:20px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.hero .button{font-size:12px;min-height:48px;padding:13px 18px;gap:18px}.retro-email{font-size:13px;min-height:44px}.hero-promise{font-size:12px;line-height:1.6;margin-top:14px}.party-ribbon{font-size:10px;padding:12px 20px;gap:22px}.retro-collection{padding-block:40px}.retro-section-head{display:block;margin-bottom:26px}.retro-section-head .eyebrow{margin-bottom:12px}.retro-section-head h2{font-size:42px;line-height:1.08}.retro-section-head>p:last-child{font-size:16px;line-height:1.65;margin-top:18px;max-width:none}.retro-bars{display:flex;flex-direction:column;gap:32px;max-width:520px}.retro-bar{width:100%}.retro-bar.bus{display:block;border-top:1px solid var(--line);padding-top:28px!important}.bar-copy,.bus .bar-copy{padding-top:16px}.retro-bar h3{font-size:31px;margin-bottom:12px}.bar-copy>p{font-size:15px;line-height:1.65;margin-bottom:12px}.bar-illustration{width:44px;height:44px}.retro-bar-photo,.bus .retro-bar-photo{aspect-ratio:auto;max-height:none}.retro-bar-photo span{font-size:10px;padding:10px 12px}.retro-collection-note{font-size:14px;line-height:1.7;margin-top:26px}.retro-contact-strip{padding:32px 20px}.retro-contact-strip h2{font-size:44px}.retro-contact-strip>p:not(.eyebrow){font-size:16px}.contact-cosmo{width:52px;height:52px}.builder-section,.cost-guide,.faq-section,.included-section,.planning-section,.inquiry-section,.booking-section{padding-block:40px}.section-heading{display:block;margin-bottom:24px}.section-heading h2,.inquiry-heading h2,.planning-intro h2,.booking-section h2{font-size:40px;line-height:1.1}.section-heading>p{font-size:16px;line-height:1.65;margin-top:18px}.builder-route{gap:8px;margin-bottom:18px}.builder-route a{padding:12px 8px;font-size:12px;line-height:1.4;gap:6px;flex-direction:column;align-items:flex-start}.builder-route span{font-size:11px;width:24px;height:24px}.builder-basics{padding:18px;margin-bottom:24px}.builder-basics p{font-size:14px}.builder-step{padding:20px 16px;margin-bottom:24px;min-width:0}.builder-step legend{font-size:27px;max-width:100%;line-height:1.2}.step-help,.field-help,.guidance,.check-choice small{font-size:14px;line-height:1.65}.field input,.field select,.currency-input input{font-size:16px}.bar-choice-body{grid-template-columns:96px minmax(0,1fr);gap:0 12px;padding:10px}.bar-choice-image{width:96px;height:128px}.bar-choice-image img{object-fit:cover;object-position:50% 40%}.bar-choice-image.bus-choice img{object-fit:contain}.bar-choice-body>strong{font-size:25px;line-height:1.15}.choice-kicker{font-size:9px;line-height:1.5}.choice-description{font-size:13px;line-height:1.5}.choice-price{font-size:22px}.choice-price small,.welcome-option{font-size:12px}.availability-note{font-size:12px;line-height:1.6}.inclusions-grid{gap:26px;margin-top:28px}.inclusions-grid h3{font-size:27px}.inclusions-grid p,.planning-list p,.staffing-note p,.booking-steps span{font-size:15px}.faq-group{margin-bottom:30px}.faq-group summary,.faq-group details>p{font-size:16px}.faq-group summary{min-height:48px;padding-block:16px}.faq-jump{gap:14px;font-size:13px}.form-guide{gap:22px}.form-guide p{font-size:15px;margin-left:0}.form-count{float:none;margin:0 0 10px;font-size:36px}.form-count small{font-size:10px;max-width:none;display:inline;margin-left:8px}.form-guide h3{font-size:27px}.direct-contact{gap:16px}.booking-section{gap:26px}.site-footer{padding-block:36px 100px}.footer-grid{grid-template-columns:1fr;gap:26px}.footer-grid>div:first-child{grid-column:auto}.footer-brand{font-size:34px}.footer-grid>div:nth-child(2)>a{font-size:14px;min-height:40px;display:flex;align-items:center;overflow-wrap:anywhere}.footer-grid>div>p:not(.eyebrow){font-size:14px}.footer-grid .eyebrow{font-size:10px}.footer-bottom{font-size:12px}.mobile-estimate{padding:9px 20px max(9px,env(safe-area-inset-bottom));}.mobile-estimate strong{font-size:24px}.mobile-estimate>a>span:last-child{font-size:12px}.estimate-card{padding:22px 18px;box-shadow:none}.estimate-total>strong{font-size:58px}.estimate-total>small,.estimate-fine,.handoff-note{font-size:12px}.estimate-items{font-size:14px}.quote-pending ul{font-size:13px}.plan-tools button,.plan-details summary{min-height:44px;font-size:13px}.inquiry-actions .button{min-height:50px}.payment-details summary{font-size:15px}}
@media(max-width:360px){.page-width{width:calc(100% - 32px)}header.site-header{padding-inline:16px}header.site-header .brand>span{font-size:21px}header.site-header .brand img{width:32px;height:32px}.mobile-navigation summary{padding:9px 10px}.hero h1{font-size:38px}.hero .button{padding-inline:14px}.hero-actions{gap:10px}.retro-email{font-size:12px}.bar-choice-body{grid-template-columns:80px minmax(0,1fr);gap:0 10px}.bar-choice-image{width:80px}.bar-choice-body>strong{font-size:23px}.builder-step{padding-inline:12px}.builder-step legend{font-size:24px}.section-heading h2,.inquiry-heading h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button:hover{transform:none}}
@media print{.mobile-navigation{display:none!important}}

@media(max-width:760px){.retro-section-head h2{font-size:38px}.mobile-estimate>a{background:transparent;color:var(--cream)}.mobile-estimate>a>span:last-child{background:var(--pink);color:var(--forest)}.mobile-estimate strong{color:var(--cream)}}

@media(min-width:761px){.retro-bars{align-items:stretch}.retro-bar.mini,.retro-bar.cart{display:flex;flex-direction:column}.retro-bar.mini .bar-copy,.retro-bar.cart .bar-copy{display:flex;flex-direction:column;flex:1}.retro-bar.mini .bar-copy>p:first-of-type,.retro-bar.cart .bar-copy>p:first-of-type{min-height:52px}.retro-bar.mini .retro-link,.retro-bar.cart .retro-link{margin-top:auto}}
@media(max-width:760px){.builder-route{grid-template-columns:repeat(3,minmax(0,1fr))}.builder-route a{min-height:96px}.mobile-estimate>a>span:last-child{min-height:44px;display:flex;align-items:center}}

/* Complete-site polish: comfortable panel insets and a real partner portrait. */
.collaboration-section{margin-block:64px 0;padding:48px;gap:28px 48px;align-items:start;border-radius:12px;grid-template-columns:1fr 1fr}
.collaboration-section h2{font-size:clamp(38px,4.1vw,54px);line-height:1.08;margin-bottom:0}
.collaboration-copy{font-size:16px}.collaboration-copy>p:first-child{margin-top:0}.collaboration-section .button{box-shadow:none;max-width:100%;white-space:normal;text-align:left;line-height:1.5}
.collaboration-photo{grid-column:1/-1;margin:4px 0 0;max-width:800px;width:100%;justify-self:center}
.collaboration-photo img{display:block;width:100%;height:auto;border-radius:8px;aspect-ratio:auto}
.collaboration-photo figcaption{font:italic 18px/1.5 Georgia,serif;text-align:center;padding:16px 0 0;color:var(--forest)}
.booking-section{padding:48px;margin-bottom:64px;gap:48px;border-radius:12px;grid-template-columns:1.1fr .9fr}
.booking-section h2{font-size:clamp(40px,4.8vw,60px)}.booking-steps strong{font-size:14px;line-height:1.5}.cart-film{min-width:0}.cart-film video{border-radius:10px;aspect-ratio:4/5}.cart-film p{font-size:27px;line-height:1.3}
.planning-intro>p:not(.eyebrow){font-size:16px;max-width:360px}.planning-intro .text-link{font-size:14px}.planning-list article:last-child{margin-bottom:0}
.faq-jump{font-size:14px}.faq-group summary a, .section-heading a{white-space:nowrap}.inquiry-heading>p:last-child{font-size:16px;line-height:1.75}.inquiry-actions .text-link{font-size:14px}
.table-scroll table{font-size:14px}.table-scroll th,.table-scroll td{font-size:14px}.table-scroll thead th{font-size:12px}.table-scroll caption{font-size:13px}.staffing-note h3{line-height:1.15}
.footer-grid>div:nth-child(2)>p:last-child,.footer-review p:last-child{font-size:12px!important}.footer-brand span{font-size:9px}.footer-grid .eyebrow{font-size:10px}.footer-bottom{font-size:12px}.footer-bottom a{font-size:13px}
@media(min-width:761px) and (max-width:1000px){.collaboration-section,.booking-section{padding:32px;gap:28px}.inclusions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{gap:32px;grid-template-columns:1fr 1fr}.planning-layout{gap:48px}}
@media(max-width:760px){.collaboration-section{margin-top:40px;padding:24px;grid-template-columns:1fr;gap:24px}.collaboration-section h2{font-size:36px}.collaboration-copy{font-size:15px}.collaboration-section .button{width:100%;gap:12px;padding:14px;font-size:11px}.collaboration-links{gap:8px 20px;font-size:14px}.collaboration-note{font-size:13px}.collaboration-photo{margin-top:0}.collaboration-photo figcaption{font-size:16px;padding-top:12px}.booking-section{padding:24px;margin-bottom:40px;grid-template-columns:1fr;gap:28px}.booking-section h2{font-size:38px;margin-bottom:24px}.booking-steps li{padding-left:28px}.booking-steps strong{font-size:14px}.booking-steps span{font-size:15px}.cart-film{max-width:100%}.cart-film video{aspect-ratio:1/1.1}.cart-film p{font-size:25px}.planning-intro>p:not(.eyebrow){font-size:16px}.faq-jump{font-size:13px;gap:8px 18px}.inquiry-heading>p:last-child{font-size:16px}.footer-bottom{gap:16px;align-items:start}.table-scroll{margin-inline:0;padding-inline:0}.dry-hire-banner h3{font-size:32px;line-height:1.15}.planning-list h3{font-size:27px;line-height:1.2}.inclusions-grid h3{line-height:1.2}}
@media(max-width:360px){.collaboration-section,.booking-section{padding:20px}.collaboration-section h2{font-size:32px}.booking-section h2{font-size:34px}.collaboration-links{gap:4px 12px}.collaboration-photo figcaption{font-size:15px}}

.mini .retro-bar-photo img{object-position:50% 64%}.bar-choice-image img[src*="mini-event"]{object-position:50% 64%}
@media(max-width:480px){.inclusions-grid{grid-template-columns:1fr;gap:24px}.inclusions-grid h3{font-size:27px;margin:12px 0}.inclusions-grid article{padding-top:14px}.inclusions-grid article>span{font-size:10px}}
/* Keep inherited header/photo rules from overriding interactive states. */
.bar-choice .bar-choice-image .selection-mark{background:var(--cream);color:transparent;border:1px solid var(--forest);padding:0;border-radius:50%;position:absolute;display:flex;align-items:center;justify-content:center}
.bar-choice>input:checked+.bar-choice-body .selection-mark{background:var(--forest);color:var(--cream)}
@media(max-width:900px){header.site-header .mobile-navigation nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;width:auto;height:auto;white-space:normal;gap:0;padding:12px 20px 18px;margin:0;border-top:1px solid var(--line)}header.site-header .mobile-navigation:not([open]) nav{display:none}header.site-header .mobile-navigation nav a{min-width:0;white-space:normal;width:auto;font-size:14px}}
.retro-bar-photo:hover img{transform:none}

/* Authentic event photography and films. */
.event-gallery{padding-block:64px;border-top:1px solid var(--line)}.event-photo-grid{columns:3;column-gap:24px}.event-photo{break-inside:avoid;margin:0 0 28px}.gallery-open{display:block;position:relative;width:100%;padding:0;border:0;border-radius:8px;overflow:hidden;background:var(--pale-pink);cursor:zoom-in;text-align:left}.gallery-open img{display:block;width:100%;height:auto}.gallery-open>span{position:absolute;bottom:12px;right:12px;background:var(--cream);color:var(--forest);padding:9px 12px;border-radius:4px;font:700 11px/1.4 Arial,sans-serif;box-shadow:0 2px 12px #0002}.event-photo figcaption{font:italic 18px/1.4 Georgia,serif;margin-top:12px}.gallery-note{font-size:14px;line-height:1.7;max-width:760px;margin-top:20px}.collaboration-media{grid-column:1/-1;display:grid;grid-template-columns:1.25fr .75fr;gap:32px;align-items:center}.collaboration-media .collaboration-photo{grid-column:auto;margin:0}.collaboration-film{margin:0;width:100%;max-width:340px;justify-self:center}.collaboration-film video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain;border-radius:8px;background:var(--forest)}.collaboration-film figcaption{font:italic 18px/1.5 Georgia,serif;text-align:center;padding-top:16px}.cart-film video{object-fit:contain;aspect-ratio:576/832;background:var(--forest)}
.photo-lightbox{width:min(1080px,calc(100% - 40px));max-width:none;max-height:94dvh;padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--cream);color:var(--forest)}.photo-lightbox::backdrop{background:#10200fe8}.photo-lightbox:not([open]){display:none}.photo-lightbox[open]{display:flex;flex-direction:column;gap:12px}.lightbox-toolbar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none}.lightbox-toolbar p{font-size:14px;margin:0}.photo-lightbox button{min-width:44px;min-height:44px;border:1px solid var(--forest);border-radius:4px;background:var(--cream);color:var(--forest);font:700 14px Arial;cursor:pointer;padding:10px 14px}#lightbox-image{display:block;width:100%;min-height:0;height:68dvh;object-fit:contain}.lightbox-bottom p{margin:0;text-align:center;font:20px/1.4 Georgia,serif}body:has(.photo-lightbox[open]){overflow:hidden}
@media(max-width:1100px) and (min-width:901px){.site-header nav{gap:16px}}
@media(max-width:900px){.event-photo-grid{columns:2}.collaboration-media{gap:24px;grid-template-columns:1fr 1fr}}
@media(max-width:760px){.event-gallery{padding-block:40px}.event-photo-grid{column-gap:16px}.event-photo{margin-bottom:22px}.event-photo figcaption{font-size:16px}.gallery-open>span{position:static;display:block;border-radius:0;text-align:center;font-size:10px;padding:9px}.collaboration-media{grid-template-columns:1fr;gap:28px}.collaboration-film{max-width:340px}.collaboration-film figcaption{font-size:16px;padding-top:12px}.photo-lightbox{width:calc(100% - 24px);padding:12px}#lightbox-image{height:62dvh}.lightbox-bottom{gap:10px}.lightbox-bottom p{font-size:17px}}
@media(max-width:360px){.event-photo-grid{columns:1}.event-photo figcaption{font-size:18px}}
@media print{.event-gallery,.photo-lightbox{display:none!important}}

#lightbox-image{height:auto;max-height:68dvh}@media(max-width:760px){#lightbox-image{height:auto;max-height:62dvh}}

/* Final scroll-flow review: compact browsing, clear section rhythm and reliable anchors. */
html{scroll-behavior:auto;scroll-padding-top:24px}.event-photo-grid{columns:4;column-gap:22px}.event-photo{margin-bottom:24px}.event-photo figcaption{font-size:17px;line-height:1.45}.event-gallery{padding-bottom:48px}.retro-collection{padding-bottom:48px}.event-gallery .section-heading{margin-bottom:28px}.site-footer{padding-bottom:28px}.footer-bottom{gap:24px}.footer-return{margin-left:auto}
@media(max-width:1100px){.event-photo-grid{columns:3}}
@media(max-width:760px){.event-photo-grid{columns:2;column-gap:16px}.event-photo{margin-bottom:22px}.event-photo figcaption{font-size:16px}.event-gallery{padding-bottom:32px}.retro-collection{padding-bottom:32px}.gallery-note{margin-bottom:0}.site-footer{padding-bottom:max(28px,env(safe-area-inset-bottom))}.footer-bottom{flex-wrap:wrap;gap:16px}.footer-return{margin-left:0}.event-gallery .section-heading{margin-bottom:24px}.inquiry-heading h2{margin-bottom:20px}.form-guide{margin-top:28px}.booking-section{margin-top:0}.planning-intro .text-link{min-height:44px;display:inline-flex;align-items:center}}
@media(max-width:360px){.event-photo-grid{columns:2;column-gap:12px}.event-photo figcaption{font-size:15px}.gallery-open>span{font-size:10px}}
.contact-cosmo{mix-blend-mode:multiply}.footer-grid>div>p:not(.eyebrow){font-size:14px}.payment-details summary{font-size:14px;min-height:44px;padding-block:10px}.table-scroll tbody th,.table-scroll tbody td,.table-scroll tbody td:nth-child(2),.table-scroll tbody td:last-child{font-size:14px}
@media(max-width:760px){.table-scroll{overflow:visible}.table-scroll table{min-width:0;display:block}.table-scroll thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.table-scroll tbody{display:block}.table-scroll tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px 16px;border-bottom:1px solid var(--line)}.table-scroll tbody th,.table-scroll tbody td,.table-scroll tbody td:nth-child(2),.table-scroll tbody td:last-child{display:block;width:auto;padding:0;border:0;line-height:1.65;font-size:14px}.table-scroll tbody td:last-child{grid-column:1/-1}.table-scroll caption{display:block}.mobile-table-hint{display:none!important}}

.review-prompt a{display:inline-block}.footer-bottom small{font-size:12px}

/* Public Instagram profile, framed by the company brand. */
.instagram-section{background:var(--pale-pink);border-block:1px solid var(--line);padding-block:64px}.instagram-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.instagram-copy h2{font-size:clamp(40px,4.8vw,60px);line-height:1.08;margin-bottom:22px}.instagram-handle{display:inline-block;font-size:19px;font-weight:700;text-decoration:none;margin-bottom:24px;min-height:44px;line-height:1.5;padding-block:8px}.instagram-copy>p:not(.eyebrow){max-width:430px;font-size:16px;line-height:1.75}.instagram-copy .instagram-note{font-size:13px;margin-top:18px;color:var(--muted)}.instagram-preview{min-width:0;width:100%;max-width:560px;justify-self:center}.instagram-preview iframe{display:block;width:100%;height:670px;border:1px solid var(--line);border-radius:10px;background:white}.instagram-fallback{display:flex;justify-content:center;align-items:center;text-align:center;min-height:44px;font-size:14px;margin-top:10px;padding:8px}
@media(max-width:900px){.instagram-layout{gap:32px}.instagram-copy h2{font-size:46px}.instagram-preview iframe{height:560px}}
@media(max-width:760px){.instagram-section{padding-block:40px}.instagram-layout{grid-template-columns:1fr;gap:24px}.instagram-copy h2{font-size:40px;margin-bottom:16px}.instagram-handle{font-size:18px;margin-bottom:16px}.instagram-copy>p:not(.eyebrow){max-width:none}.instagram-copy .button{font-size:12px;min-height:48px}.instagram-preview{max-width:540px}.instagram-preview iframe{height:560px}.instagram-copy .instagram-note{margin-bottom:0}.instagram-fallback{font-size:13px}}
@media(max-width:360px){.instagram-copy h2{font-size:36px}.instagram-preview iframe{height:520px}}
@media print{.instagram-section{display:none!important}}
.instagram-preview iframe{height:620px}@media(max-width:900px){.instagram-preview iframe{height:490px}}@media(max-width:760px){.instagram-preview iframe{height:clamp(410px,calc((100vw - 40px)*.667 + 220px),600px)}}

/* A single inquiry path, with contact alternatives kept secondary. */
.simple-inquiry { padding-block:clamp(48px,6vw,88px); }
.simple-inquiry .page-width { max-width:1000px; }
.simple-inquiry .inquiry-heading { max-width:750px; }
.simple-inquiry .inquiry-heading p:last-child { max-width:620px; }
.simple-inquiry .inquiry-actions { margin-top:28px; }
.simple-inquiry .direct-contact { margin-top:28px; padding-top:22px; }
@media(max-width:600px){.simple-inquiry .inquiry-actions .button{width:100%;}.simple-inquiry .direct-contact{display:flex;flex-wrap:wrap;gap:14px 24px;}.simple-inquiry .direct-contact p{flex-basis:100%;margin:0;}}
