/* Mobile-first. Wider layouts are added progressively at 600, 768, 960 and 1100px. */
:root{--blue:#1843ac;--sky:#2877ad;--orange:#ff7900;--orange-ink:#c65300;--green:#2f8429;--ink:#10192c;--muted:#465268;--ice:#e5f1fa;--pale:#f4f9fd;--line:#ccdce9;--white:#fff;--radius:18px;--max:1120px;--gutter:16px;--section:48px;--header:78px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 16px);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;color:var(--ink);font-family:'Poppins','Avenir Next','Segoe UI',Arial,sans-serif;font-size:17.92px;line-height:1.6;background:#fff}body.modal-open,body.nav-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}img{display:block;max-width:100%;height:auto}button:disabled{cursor:wait;opacity:.7}a,button,summary{touch-action:manipulation}:focus-visible{outline:3px solid #e96c00;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:750;letter-spacing:-.035em;line-height:1.18;overflow-wrap:break-word;text-wrap:balance}h1{font-size:clamp(2.45rem,11.8vw,3.75rem)}h2{font-size:clamp(1.848rem,7.392vw,2.408rem)}h3{font-size:1.4rem}p{margin-top:15px}small{font-size:0.91rem}svg.icon{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.wrap{width:min(var(--max),calc(100% - var(--gutter)*2));margin-inline:auto}.wrap>*{min-width:0}.skip{position:fixed;left:16px;top:-90px;background:white;z-index:1000;padding:12px}.skip:focus{top:12px}.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.98);border-bottom:1px solid #edf1f6}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--header);flex-wrap:wrap}.brand{display:inline-flex;min-width:108px;flex-shrink:0;align-items:center}.brand-logo{width:110px;height:59px;object-fit:contain}.desktop-nav{width:100%;order:5;display:flex;flex-direction:column;gap:0;padding-bottom:16px;color:#236da4;font-size:1.12rem;font-weight:700;max-height:calc(100vh - 155px);max-height:calc(100dvh - 155px);overflow-y:auto;overscroll-behavior:contain}.js .desktop-nav{display:none}.js .desktop-nav.open{display:flex}.desktop-nav>a,.nav-service>summary{display:flex;align-items:center;min-height:48px;padding:10px 12px;border-radius:8px}.desktop-nav>a:hover,.nav-service>summary:hover{background:var(--ice)}.desktop-nav a[aria-current=page],.nav-service summary.active{color:var(--orange-ink)}.nav-service{position:relative}.nav-service summary{list-style:none;justify-content:space-between;gap:8px}.nav-service summary::-webkit-details-marker{display:none}.nav-service summary svg{width:16px;height:16px;transition:transform .2s}.nav-service[open] summary svg{transform:rotate(180deg)}.subnav{padding:6px 8px;background:#eff6fb;border-radius:10px}.subnav a{display:flex;align-items:center;min-height:48px;padding:10px 14px;border-radius:8px;font-size:1.0304rem}.subnav a:hover{background:#dbeaf6}.mobile-toggle{display:none;align-items:center;justify-content:center;min-width:48px;min-height:48px;border:1px solid var(--line);background:white;border-radius:10px;padding:11px;margin-left:auto}.js .mobile-toggle{display:inline-flex}.header-inner>.btn{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;max-width:100%;padding:12px 20px;border-radius:999px;border:1px solid transparent;background:var(--sky);color:#fff;font-size:1.008rem;font-weight:800;line-height:1.4;transition:background .2s,transform .2s;text-align:center;white-space:normal;overflow-wrap:anywhere}.btn.green{background:var(--green)}.btn.orange{background:var(--orange);color:#14203a}.btn.outline{border-color:var(--sky);color:#236da4;background:white}.btn.white{background:white;color:var(--blue)}.actions{display:flex;gap:12px;flex-direction:column;align-items:stretch;margin-top:24px}.hero{overflow:hidden;background:radial-gradient(ellipse at 65% 30%,#ffdda8a6,transparent 38%),radial-gradient(ellipse at 15% 70%,#caeaff,transparent 42%),#fffdf9}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.hero-copy{padding:36px 0 28px}.hero h1{color:var(--sky);margin-top:18px;text-transform:uppercase}.hero p{max-width:500px;font-size:1.12rem;font-weight:600;line-height:1.6}.hero .price{color:var(--orange-ink);font-weight:800;font-size:1.568rem;margin-top:16px}.orange-text{color:var(--orange-ink)}.sky-text{color:var(--sky)}.hero-media{position:relative;aspect-ratio:16/10;margin-bottom:20px;border-radius:24px;overflow:hidden;background:var(--ice)}.hero-media>img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-media.poster{aspect-ratio:4/3}.hero-media.poster>img{object-fit:contain}.pill{display:inline-flex;align-items:center;gap:6px;max-width:100%;background:#256da4;color:white;font-size:0.84rem;font-weight:700;padding:7px 11px;border-radius:7px;line-height:1.45}.pill.orange{background:var(--orange);color:#182139}.pill.purple{background:#6940a6}.section{padding:var(--section) 0}.section.ice{background:var(--ice)}.section.pale{background:var(--pale)}.section.blue{background:var(--blue);color:white}.section.navy{background:var(--ink);color:white}.section.mesh{background:radial-gradient(ellipse at 0 90%,#ddd4ec,transparent 45%),radial-gradient(ellipse at 90% 0,#cde8f9,transparent 45%),radial-gradient(ellipse at 50% 100%,#ffe7b7,transparent 50%),white}.section-head{text-align:center;max-width:800px;margin:0 auto 28px}.section-head .pill{margin-bottom:16px}.section-head h2{color:var(--sky)}.section-head p{margin-top:13px;font-weight:600}.section.blue .section-head h2,.section.navy .section-head h2{color:white}.section.blue .orange-text,.section.navy .orange-text{color:#ff912b}.section.blue .sky-text,.section.navy .sky-text{color:#72c8ff}.grid{display:grid;gap:20px}.grid.two,.grid.three{grid-template-columns:minmax(0,1fr)}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid>*{min-width:0}.split{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:28px}.split>*{min-width:0}.split.reverse-mobile>.hall-visual{order:2}.split h2{color:var(--sky)}.split h3{margin-top:12px}.navy .split h2{color:#ff912b}.navy .split h2 .sky-text{color:#72c8ff}.photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}.trust-bar{background:var(--orange);color:#14203a}.trust-bar.blue{background:var(--blue);color:white}.trust-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;padding:16px 0;font-size:0.91rem;font-weight:800}.trust-item{display:flex;align-items:center;gap:8px;min-width:0;line-height:1.45}.trust-item .icon{width:19px;height:19px}.card{border-radius:var(--radius);background:white;border:1px solid var(--line);padding:23px;color:var(--ink)}.service-card{border-color:var(--orange);text-align:center;display:flex;flex-direction:column;align-items:center;padding:26px 23px}.service-card.skill{border-color:#a67fdd}.service-card.work{border-color:var(--green)}.service-card .service-name{font-size:2.24rem;letter-spacing:-1px;font-weight:850;color:var(--sky);display:flex;align-items:center;min-height:80px;margin:18px 0 5px}.service-card .service-name span{color:var(--orange-ink)}.service-brand-logo{width:150px;height:80px;object-fit:contain;margin:18px 0 5px}.service-card .tagline{font-family:cursive;font-size:1.12rem}.service-card h3{font-size:1.288rem;margin-top:20px;color:var(--orange-ink)}.service-card p{font-size:1.064rem;margin:12px 0 22px}.service-card .btn{margin-top:auto;width:100%}.hall-card{display:flex;flex-direction:column;min-width:0;height:100%;background:#edf6fd;border-radius:var(--radius);overflow:hidden}.hall-card>img{display:block;flex:none;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;background:#dce9f3}.hall-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:23px}.hall-body>p{flex:1}.hall-body>.specs{width:100%}.hall-body h3{color:var(--sky);font-size:1.792rem}.hall-body p{font-size:1.064rem}.hall-body .btn{width:100%;margin-top:6px}.specs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0;min-width:0}.specs span{display:inline-flex;gap:6px;align-items:center;border-radius:7px;background:var(--blue);color:white;font-size:0.8736rem;padding:8px 10px;line-height:1.45;max-width:100%}.specs .icon{width:16px;height:16px}.list-pills{display:grid;gap:10px;margin:22px 0}.list-pills>span{display:flex;align-items:flex-start;gap:9px;border:1px solid #f07a16;border-radius:9px;padding:10px 12px;font-size:0.98rem;line-height:1.55;overflow-wrap:anywhere}.list-pills>span .icon{width:19px;height:19px;margin-top:2px}.list-pills.orange>span{background:var(--orange);color:#172139;border:none}.media-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.media-card img{aspect-ratio:4/3;width:100%;object-fit:cover}.media-caption{padding:16px;color:var(--ink);font-size:1.0528rem;font-weight:800;display:flex;gap:9px;align-items:flex-start;background:white;line-height:1.45;min-height:78px;flex:1}.media-caption .icon{color:var(--orange-ink);margin-top:2px}.carousel{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:4px 2px 14px;overscroll-behavior-x:contain}.carousel>.media-card{flex:0 0 88%;scroll-snap-align:start}.carousel-controls{display:flex;gap:14px;justify-content:center;margin-top:14px}.icon-button{width:48px;height:48px;flex:none;border:1px solid currentColor;border-radius:50%;display:inline-grid;place-items:center;background:transparent;color:inherit}.icon-button:disabled{opacity:.35;cursor:default}.map{display:block;width:100%;min-width:0;aspect-ratio:4/3;min-height:260px;border:0;border-radius:16px;background:#e4e9ef}.conversion .card{display:flex;align-items:center;gap:18px;justify-content:flex-start}.conversion .card>svg{width:48px;height:48px;color:var(--blue)}.conversion .card>div{min-width:0}.conversion h3{color:var(--orange-ink);margin:0 0 12px}.conversion .btn{font-size:0.952rem;padding-inline:16px}.conversion .section-head h2{font-size:2.24rem}.checklist{padding:0;list-style:none;margin:17px 0}.checklist li{padding:8px 0;display:flex;align-items:flex-start;gap:8px}.checklist .icon{color:var(--orange-ink);margin-top:2px}.layout-buttons{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:24px 0}.layout-buttons button{border:1px solid #2877ad;background:#2877ad;color:white;border-radius:10px;padding:13px 14px;font-size:1.008rem;text-align:left;min-height:66px;line-height:1.45}.layout-buttons button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#11203a;box-shadow:inset 0 0 0 1px #a54400}.layout-buttons small{display:block;font-size:0.8848rem;margin-top:3px}.hall-visual{position:relative;min-width:0}.hall-visual .hall-setup-photo{aspect-ratio:4/3;object-fit:contain;border-radius:14px;background:#eef4fa;width:100%;height:auto}.hall-photo-caption{font-size:0.98rem;font-weight:700;text-align:center;margin:11px 0 0;color:#245b88}.seating-details{margin-top:13px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.seating-details>summary{padding:13px 16px;min-height:48px;font-size:0.98rem;font-weight:700;color:#236da4}.layout-plan{background:white;padding:16px;color:var(--ink)}.layout-plan svg{display:block;width:100%;height:auto;max-height:160px}.layout-plan figcaption{text-align:center;font-size:0.9408rem;font-weight:700;line-height:1.5}.layout-plan figure{margin:0}.facility{display:flex;gap:16px;align-items:flex-start}.facility>svg{width:45px;height:45px;color:var(--blue)}.facility h3{color:var(--orange-ink);font-size:1.232rem;margin-top:0}.facility p{font-size:1.008rem;margin-top:9px}.food-card{background:var(--orange);color:#172139;padding:23px;border-radius:22px}.food-card .photo{aspect-ratio:4/3;object-fit:cover}.food-card h3{font-size:1.68rem}.food-card .price{font-size:1.904rem;font-weight:850;margin:12px 0}.food-card p{font-size:1.0528rem}.food-card+.food-card{margin-top:24px}.menu-artwork{margin:28px auto 0;max-width:600px}.menu-poster{width:100%;height:auto;max-height:820px;object-fit:contain;border-radius:18px}.tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:24px 0}.tabs button,.tabs a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 16px;border-radius:99px;border:1px solid #9ebed6;background:white;color:#225d96;font-weight:700;font-size:0.98rem;line-height:1.4;text-align:center}.tabs button[aria-selected=true],.tabs a.active{background:var(--blue);color:white}.accordion{display:grid;gap:12px}.accordion details{background:white;border:1px solid #bfd4e4;border-radius:10px;overflow:hidden}.accordion summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:16px;color:#236da4;font-weight:700;font-size:1.0528rem;line-height:1.5}.accordion summary::-webkit-details-marker{display:none}.accordion summary::after{content:'+';font-size:1.456rem;font-weight:600;flex:none}.accordion details[open] summary{color:var(--orange-ink)}.accordion details[open] summary::after{content:'−'}.accordion details>div{padding:0 16px 20px;font-size:1.0528rem;color:var(--ink);overflow-wrap:anywhere}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-item{padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;position:relative;background:white;text-align:left;color:var(--ink);min-width:0}.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e8f1f8;transition:transform .3s}.gallery-item span{display:flex;align-items:center;min-height:58px;font-size:0.896rem;padding:10px;line-height:1.45;font-weight:700}.family-card{overflow:hidden;padding:23px;display:flex;flex-direction:column}.family-card h3{color:var(--orange-ink);margin:0 0 18px}.family-card img{aspect-ratio:16/10;object-fit:cover;width:100%;border-radius:11px}.family-card h4{line-height:1.45;margin:20px 0 10px;font-size:1.2096rem}.family-card p{font-size:1.0528rem;margin:0 0 15px}.topic-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.topic-list span{font-size:0.896rem;line-height:1.5;background:#edf2f6;padding:6px 9px;border-radius:6px;max-width:100%;overflow-wrap:anywhere}.family-card .btn{align-self:stretch;margin-top:auto}.value-card{padding:24px;border-radius:20px;color:white;min-height:150px;overflow:hidden}.value-card:nth-child(1){background:#6942aa}.value-card:nth-child(2){background:#08748e}.value-card:nth-child(3){background:var(--orange);color:#14203a}.value-card .icon{width:45px;height:45px;float:right;margin:6px 0 12px 14px}.value-card h3{font-size:1.344rem}.value-card p{font-size:1.0528rem;line-height:1.6}.training-offer{background:linear-gradient(120deg,#d4efff,#fff0d5);border:2px solid #ff8b17;border-radius:22px;overflow:hidden}.training-offer .split{gap:0;align-items:stretch}.offer-content{padding:24px}.offer-content .offer-price{font-size:clamp(2.688rem,12.32vw,3.92rem);font-weight:900;color:#b94b00;line-height:1.2;margin:15px 0}.offer-content h2{color:var(--blue)}.offer-visual{display:flex;flex-direction:column;height:100%;background:var(--blue);color:white;overflow:hidden}.offer-visual>.offer-image{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}.offer-visual-caption{padding:24px;flex:1}.offer-visual-caption>span{font-size:0.9408rem;font-weight:700}.offer-visual-caption>strong{display:block;font-size:2.016rem;line-height:1.2;margin-top:12px}.offer-badges .specs span{background:white;color:var(--blue)}.offer-badges .specs{margin-bottom:0}.form-panel{background:white;padding:22px;border-radius:20px;color:var(--ink);min-width:0}.form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field label{font-size:1.008rem;font-weight:700}.field input,.field select,.field textarea,.faq-search{display:block;width:100%;max-width:100%;border:1px solid #b8cbdd;background:#f1f5fa;border-radius:8px;padding:13px;color:var(--ink);min-width:0;min-height:48px;font-size:17.92px;line-height:1.5}.field input[type=date]{min-height:52px;appearance:none;-webkit-appearance:none}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--sky);outline-offset:2px}.required{color:#a13d00}.form-note{font-size:0.9408rem;line-height:1.6;color:var(--muted);margin:14px 0 20px}.form-message{margin-top:18px;border-radius:10px;padding:16px;background:#edf5fb;overflow-wrap:anywhere}.form-message>p:first-child{margin-top:0}.form-message>.btn{margin-top:15px;width:100%}.form-message:empty{display:none}.form-message.error{background:#fff1ec;color:#972700}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-actions{display:flex;justify-content:center}.form-actions>.btn{width:100%}.metric{text-align:center;padding:20px 11px}.metric strong{display:block;font-size:clamp(1.792rem,8.512vw,2.52rem);line-height:1.2;color:var(--orange-ink);letter-spacing:-.045em}.metric svg{width:38px;height:38px;color:var(--blue);margin:12px auto}.metric h3{font-size:1.0528rem;line-height:1.4}.metric p{font-size:0.91rem;line-height:1.5}.mini-feature{padding:17px;background:var(--orange);color:#172139;border-radius:12px;margin-top:12px}.mini-feature h3{font-size:1.12rem;margin:0}.mini-feature p{font-size:1.008rem;margin-top:7px}.step{display:flex;align-items:center;gap:14px;padding:22px}.step strong{width:36px;height:36px;border-radius:50%;background:#e4f1fa;color:var(--blue);display:grid;place-items:center;flex:none}.step p{margin:0;font-size:1.0528rem;font-weight:700}.faq-hero{padding:40px 0}.faq-search-wrap{max-width:620px;margin:24px auto 0}.faq-search{background:white;margin-top:8px}.faq-count{font-size:1.008rem;color:var(--muted);margin:12px 0 0}.faq-category h2{font-size:1.848rem;color:var(--sky);margin-bottom:22px}.contact-method{display:flex;gap:13px;margin-top:22px;min-width:0}.contact-method>svg{color:var(--sky);margin-top:4px}.contact-method>div{min-width:0}.contact-method h3{font-size:1.12rem;margin-top:0}.contact-method p{margin-top:7px;overflow-wrap:anywhere}.contact-method a:not(.btn){display:inline-flex;align-items:center;min-height:44px;max-width:100%}.hours{background:var(--orange);padding:16px 18px;border-radius:10px;margin-top:20px;font-size:1.0528rem;color:#14203a}.region-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.region-tags span{padding:6px 10px;border-radius:99px;background:#edf4fa;color:#172139;font-size:0.8736rem}.video-preview{position:relative;overflow:hidden;border-radius:24px;aspect-ratio:4/3;background:#10203b;margin-bottom:20px;min-width:0}.video-preview>img{width:100%;height:100%;object-fit:contain;opacity:.75}.play-button{position:absolute;inset:0;display:grid;place-items:center;background:none;border:0;color:white;width:100%;height:100%}.play-button>span{width:72px;height:72px;border-radius:50%;border:2px solid white;background:#11182755;display:grid;place-items:center}.play-button svg{width:30px;height:30px;fill:white;stroke:white}.video-caption{position:absolute;bottom:12px;left:15px;right:15px;color:white;font-size:0.91rem;line-height:1.5;pointer-events:none}.site-footer{padding:32px 0 calc(100px + env(safe-area-inset-bottom,0px));background:#f9fbfd;border-top:1px solid var(--line)}.footer-inner{display:flex;flex-direction:column;gap:22px;align-items:flex-start}.site-footer .brand-logo{width:144px;height:auto}.footer-links{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:1.008rem}.footer-links>a{display:flex;align-items:center;min-height:44px}.footer-small{font-size:0.9408rem;color:var(--muted);margin-top:16px;overflow-wrap:anywhere}.footer-small a{display:inline-block;padding-block:6px}.sticky-contact{position:fixed;bottom:0;left:0;right:0;z-index:70;background:var(--green);color:white;border-top:1px solid #ffffff40;padding:9px 0 calc(9px + env(safe-area-inset-bottom,0px))}.sticky-inner{display:flex;justify-content:center;align-items:center;gap:16px;font-size:0.98rem;font-weight:700}.sticky-inner>span{display:none}.sticky-inner .btn{width:100%;min-height:46px;max-width:420px;padding:10px 20px}.form-focus .sticky-contact{display:none}.modal{width:min(900px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border:0;border-radius:18px;padding:0;background:white;color:var(--ink);overflow-y:auto;overscroll-behavior:contain}.modal::backdrop{background:#071122df}.modal-content{padding:16px}.modal-image{display:block;max-height:calc(100vh - 200px);max-height:calc(100dvh - 200px);object-fit:contain;width:100%;height:auto;background:#0f182b}.modal-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:16px}.modal-head h2{font-size:1.2544rem;line-height:1.4}.modal-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:16px}.no-results{padding:26px;text-align:center;background:white;border-radius:15px}.thankyou{min-height:65vh;display:grid;place-items:center;text-align:center}.thankyou .card{max-width:680px;padding:30px 22px}.thankyou svg{width:58px;height:58px;color:var(--green);margin:0 auto 20px}.thankyou h1{font-size:clamp(2.45rem,11.8vw,3.75rem);color:var(--sky)}.reveal-ready{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}.brand-mini{font-size:1.904rem;font-weight:850;color:var(--sky);letter-spacing:-1px;margin-bottom:12px}.brand-mini b{color:var(--orange-ink)}.display-only-asset{object-fit:contain;background:white}[hidden]{display:none!important}.noscript-note{padding:16px;border:1px solid var(--line);border-radius:10px;margin-top:18px;font-size:1.008rem}
@media(min-width:400px){.layout-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:600px){:root{--gutter:24px;--section:60px}.actions{flex-direction:row;align-items:center;flex-wrap:wrap}.hero .actions .btn{flex:1 1 auto}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.full,.form-grid>.full{grid-column:1/-1}.form-panel{padding:28px}.form-actions>.btn{width:auto;min-width:200px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.carousel>.media-card{flex-basis:65%}.card{padding:26px}.media-card{padding:0}.metric{padding:22px 12px}.conversion .card{padding:26px}.hero-copy{padding:44px 0 34px}.hero-media{max-height:430px}.offer-content,.offer-visual-caption{padding:30px}.modal-content{padding:24px}.modal-head h2{font-size:1.456rem}.form-message>.btn{width:auto}}
@media(min-width:768px){:root{--section:68px}.grid.two,.split{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.split.reverse-mobile>.hall-visual{order:0}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.trust-inner{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.trust-item{font-size:0.9408rem}.hall-body .btn{width:auto}.family-card .btn{align-self:flex-start}.service-card .btn{width:auto}.metric strong{font-size:2.352rem}.metric h3{font-size:1.0528rem}.metric p{font-size:0.8736rem}.metric{padding:23px 13px}.video-preview>img{object-fit:cover}.hero .actions .btn{flex:none}.food-card{padding:28px}.food-card .photo{aspect-ratio:1/1}.photo{border-radius:22px}.faq-hero{padding:60px 0}.faq-hero h1{font-size:3rem}.footer-inner{flex-direction:row;justify-content:space-between;gap:30px}.sticky-inner{justify-content:space-between}.sticky-inner>span{display:block;max-width:60%;font-size:0.9184rem}.sticky-inner .btn{width:auto;max-width:none}.layout-buttons button{font-size:0.9408rem}.conversion .card{gap:20px}.conversion .card>svg{width:55px;height:55px}.form-panel{padding:26px}.form-grid{grid-template-columns:minmax(0,1fr)}.field.full,.form-grid>.full{grid-column:auto}.training-offer .split{gap:0}.offer-content{padding:28px}.offer-content .offer-price{font-size:3.696rem}}
@media(min-width:960px){:root{--gutter:32px;--section:80px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.grid.two,.split{gap:48px}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.carousel{gap:22px}.carousel>.media-card{flex-basis:calc((100% - 44px)/3)}h2{font-size:2.8rem}.hero-copy{padding:65px 0}.hero-media{min-height:510px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.full,.form-grid>.full{grid-column:1/-1}.form-panel{padding:32px}.family-card,.service-card{padding:28px}.card.metric{padding:25px 16px}.metric strong{font-size:2.912rem}.metric h3{font-size:1.12rem}.metric p{font-size:0.9184rem}.offer-content{padding:32px}.offer-content .offer-price{font-size:4.48rem}.offer-visual-caption>strong{font-size:2.408rem}.hero h1{font-size:clamp(3rem,4.5vw,4.2rem)}.form-focus .sticky-contact{display:block}}
@media(min-width:1100px){:root{--header:91px}.header-inner{flex-wrap:nowrap;gap:20px}.brand-logo{width:128px;height:68px}.desktop-nav,.js .desktop-nav{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;order:0;width:auto;max-height:none;overflow:visible;padding:0;font-size:0.9184rem}.desktop-nav>a,.nav-service>summary{padding:10px 4px;min-height:48px;white-space:nowrap}.nav-service>summary{gap:5px}.subnav{position:absolute;top:100%;left:-14px;width:240px;padding:10px;background:white;border:1px solid var(--line);box-shadow:0 14px 35px #10285914}.subnav a{font-size:0.9296rem;white-space:normal}.header-inner>.btn{display:inline-flex;font-size:0.896rem;padding-inline:16px;white-space:nowrap}.mobile-toggle,.js .mobile-toggle{display:none}.hero-grid{gap:38px}.grid.two,.split{gap:60px}.hero-media.poster{border-radius:24px}.metric strong{font-size:3.08rem}}
@media(min-width:1500px){:root{--max:1200px;--section:90px}.hero-media{min-height:550px}.hero-copy{padding:80px 0}}
@media(hover:hover) and (pointer:fine){.btn:hover{background:#1e6597;transform:translateY(-2px)}.btn.green:hover{background:#246c20}.btn.orange:hover{background:#e46700;color:#14203a}.btn.white:hover{background:#eaf3fb;color:var(--blue)}.btn.outline:hover{background:#e8f2fa;color:#1e6597}.gallery-item:hover img{transform:scale(1.025)}.icon-button:hover:not(:disabled){background:#ffffff25}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
@media print{.site-header,.sticky-contact,.site-footer,.carousel-controls{display:none}.section{padding:25px 0;break-inside:avoid}.reveal-ready{opacity:1;transform:none}body{font-size:11pt}.carousel{overflow:visible;flex-wrap:wrap}.carousel>.media-card{flex:1 1 30%}}
.center-block .specs{justify-content:center}
/* Figma desktop silhouette: broad top, upper-left bulge, narrower bottom. */
.hero-curve-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
@media(min-width:960px){
 .hero-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;--hero-bleed:max(var(--gutter),calc((100vw - var(--max))/2));align-items:stretch}
 .hero-grid>.hero-media,.hero-grid>.hero-media.poster,.hero-grid>.video-preview{position:relative;align-self:stretch;justify-self:stretch;width:calc(100% + var(--hero-bleed));max-width:none;height:auto;min-height:460px;max-height:none;margin:0 calc(-1 * var(--hero-bleed)) 0 0;aspect-ratio:auto;border-radius:0;isolation:isolate}
 .hero-grid>.hero-media>img,.hero-grid>.hero-media.poster>img,.hero-grid>.video-preview>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:center}
 .hero-grid>.hero-copy{padding-right:38px}
 .hero-grid>.hero-media{clip-path:url(#hero-curve)}
 .hero-grid>.video-preview{border-radius:0}
 .hero-grid>.video-preview .video-caption{right:24px;bottom:18px}
}
@media(min-width:960px){.hero-grid>.hero-media,.hero-grid>.hero-media.poster,.hero-grid>.video-preview{min-height:clamp(510px,39.6vw,680px)}}
@media(min-width:1500px){.hero-grid>.hero-media,.hero-grid>.hero-media.poster,.hero-grid>.video-preview{min-height:clamp(510px,39.6vw,680px)}}

@media(min-width:1100px){.hero-grid{gap:0}}

/* Error recovery uses the existing mobile-first spacing and type scale. */
.recovery-links{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:center;margin-top:24px}.recovery-links>a{display:inline-flex;align-items:center;min-height:48px;color:var(--sky);text-decoration:underline;text-underline-offset:4px}.thankyou .card{margin-inline:auto}

/* Client canvas review, 21 October 2026. Shared typography and spacing tokens. */
@font-face{font-family:Poppins;src:url('assets/fonts/poppins-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/fonts/poppins-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/fonts/poppins-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/fonts/poppins-800.ttf') format('truetype');font-style:normal;font-weight:800;font-display:swap}
:root{--sky:#418ec6;--orange:#fa8301;--orange-ink:#fa8301;--line:#c8d9e7;--radius:18px;--section:48px}
body{font-family:Poppins,Arial,sans-serif;font-weight:600}h1{font-weight:800}h2{font-weight:800}h3,h4{font-weight:800}.hero h1{font-weight:800;line-height:1.08;letter-spacing:-.04em}.hero-copy>p{font-size:1.19rem;font-weight:700;line-height:1.6;max-width:40rem}.section-head p{font-size:1.12rem;font-weight:700;line-height:1.6}.section-head{max-width:1020px}.hero-copy .price{font-size:1.848rem;font-weight:800}.trust-bar,.trust-bar.blue{color:#fff}.trust-item{font-size:1.05rem;font-weight:700}.hero-brand-logo{width:100px;height:auto;max-height:64px;object-fit:contain;object-position:left}.brand-mini{margin-bottom:18px}.service-brand-logo{width:132px;height:78px;object-fit:contain;margin:20px auto 10px}.service-card h3{font-size:1.456rem;margin-top:12px}.service-card p{font-size:1.12rem;font-weight:700}.service-card{border-width:2px}.service-card>.pill{background:var(--orange);color:#fff}.service-card.skill>.pill{background:#148ec8}.service-card.work>.pill{background:var(--green)}
.hall-body h3{font-size:2.128rem;font-weight:800}.hall-body p{font-size:1.12rem;font-weight:700}.specs>span{font-size:1.064rem;font-weight:700;padding:9px 12px}.hall-uses{list-style:none;padding:0;margin:22px 0;display:flex;gap:8px;flex-wrap:wrap}.hall-uses li{background:#fff;border:1px solid var(--line);border-radius:99px;padding:6px 11px;font-size:0.91rem;font-weight:700}.layout-buttons button{font-size:1.12rem;font-weight:800;line-height:1.35;min-height:78px}.layout-buttons small{font-size:0.91rem;font-weight:700;line-height:1.5}.layout-buttons button[aria-pressed=true]{color:#fff;box-shadow:inset 0 0 0 2px #b95000}.hall-visual .hall-setup-photo{border-radius:22px}.hall-photo-caption{font-size:1.05rem}
.list-pills.orange>span,.mini-feature,.food-card{color:#fff}.list-pills>span{font-size:1.12rem;font-weight:700;padding:12px 16px;border-radius:999px}.mini-feature h3{font-size:1.19rem}.mini-feature p{font-size:1.12rem;font-weight:700}.navy .list-pills>span{border-color:var(--orange);font-size:1.05rem}.navy .list-pills strong{color:var(--orange);display:contents}.navy .list-pills .icon{color:var(--orange)}.navy .split>div>p{font-size:1.12rem;font-weight:700}.region-tags span{font-size:0.91rem;font-weight:800}.hours-link{display:block;font-weight:700}
.conversion .client-artwork{width:72px;height:72px;object-fit:contain;flex:none}.conversion h3{font-size:1.68rem}.event-intro{padding-bottom:30px}.event-intro .section-head{margin-bottom:0}.event-photos{padding-top:36px;padding-bottom:36px}.media-caption{font-size:1.12rem}.food-card{background:linear-gradient(120deg,#fa8301,#f66024);padding:24px}.food-card h3{font-size:2.016rem;font-weight:800}.food-card .price{font-size:2.016rem;color:#fff}.food-card p{font-size:1.12rem;font-weight:700;line-height:1.65}.food-card .photo{border-radius:18px}.food-card+.food-card{margin-top:24px}.meal-switcher.enhanced .food-card{margin-top:0}.meal-tabs{margin:0 0 24px}.meal-tabs button{min-width:124px}.meal-tabs button[aria-selected=true]{background:var(--orange);border-color:var(--orange);color:#fff}.food-card:focus-visible{outline-offset:6px}.accordion details{border:1px solid #c4d7e6;box-shadow:0 2px 3px #22354a0c}.accordion summary{font-weight:700}
.possibilities{padding:24px;border-radius:24px;display:grid;gap:24px;background:linear-gradient(110deg,#005dc9,#24b7e6 38%,#ffe084 68%,#ff6d38)}.possibility-card{background:#fff;border-radius:18px;padding:18px;min-width:0}.possibility-card h3{color:var(--orange);font-size:1.26rem;margin-bottom:12px}.possibility-photo{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px}.possibility-card ul{font-size:1.05rem;line-height:1.7;font-weight:700;padding-left:19px;margin-bottom:0}.skill-value{position:relative;min-height:190px;padding-bottom:60px}.skill-value .client-artwork{position:absolute;width:75px;height:75px;object-fit:contain;right:14px;bottom:-14px;border-radius:50%}.skill-value:nth-child(1){background:#6342a6}.skill-value:nth-child(2){background:#15b3dd}.skill-value:nth-child(3){background:var(--orange);color:#fff}.skill-value p{max-width:80%;font-weight:700}.training-illustration{width:220px;max-width:70%;justify-self:center;height:auto}.family-card h3{font-size:1.736rem;font-weight:800}.family-card h4{font-size:1.26rem;font-weight:700}.family-card{box-shadow:0 3px 7px #132d4720;border-radius:20px}.training-promotion .wrap{max-width:880px}.training-poster-link{display:block}.training-poster{width:100%;height:auto}.training-poster-description{margin-top:24px;text-align:center}.training-poster-description h2{font-size:1.792rem}.training-poster-description strong{display:block;color:var(--orange);font-size:2.016rem;margin-top:12px}.training-poster-description .btn{margin-top:20px}
[data-page=skillez] #registration{background:linear-gradient(90deg,#091221e8,#091221b0),url('assets/responsive/skill-hero-client-20261028-1200.jpg') center/cover no-repeat}[data-page=skillez] #registration p{font-weight:700}[data-page=skillez] .price-link{margin:24px 0 0}[data-page=skillez] .price-link .btn{background:#fa8301;color:#fff;border-radius:14px;font-size:1.568rem;font-weight:800;padding:16px 28px}[data-page=skillez] #registration h2{color:var(--orange)}[data-page=skillez] #registration h2 .orange-text{color:var(--sky)}
[data-page=workez] #packages .value-card:nth-child(1){background:#fa8301;color:#fff}[data-page=workez] #packages .value-card:nth-child(2){background:#60409d}[data-page=workez] #packages .value-card:nth-child(3){background:#20addb;color:#fff}[data-page=workez] #packages+.section .facility{border:3px solid #e45405;border-radius:14px}[data-page=workez] #packages+.section .facility h3{font-size:1.232rem}[data-page=workez] #packages+.section .facility p{font-size:1.064rem}[data-page=workez] .value-card p{font-weight:700}[data-page=about] .metric .client-artwork{width:38px;height:38px;object-fit:contain;margin:12px auto}[data-page=about] .metric strong{font-weight:800}[data-page=contact] .hero .section-head>p{margin-inline:auto;max-width:660px;text-align:center;font-weight:700;font-size:1.26rem}
.btn.orange{color:#fff}.btn.orange:hover{color:#fff}.btn.white{color:#b44a00}.section-head .orange-text,.orange-text{color:var(--orange)}.section:not(.blue):not(.navy) .section-head .orange-text{color:var(--orange)}
@media(min-width:600px){:root{--section:60px}.food-card{padding:30px}.conversion .client-artwork{width:86px;height:86px}}
@media(min-width:768px){.possibilities{grid-template-columns:repeat(3,minmax(0,1fr));padding:35px 28px 60px;gap:20px}.possibility-card:nth-child(2){transform:translateY(30px)}.skill-value:nth-child(2){margin-top:30px}.skill-value{min-height:180px}.training-illustration{width:270px}.food-card .photo{aspect-ratio:1/1}.conversion .client-artwork{width:100px;height:100px}.hero-copy>p{font-size:1.26rem}.section-head p{font-size:1.26rem}.food-card h3{font-size:2.24rem}.food-card p{font-size:1.19rem}.food-card .price{font-size:2.24rem}}
@media(min-width:960px){:root{--section:72px}.trust-item{font-size:1.12rem}.layout-buttons button{font-size:1.19rem}.family-card h3{font-size:1.96rem}.possibilities{padding:40px 36px 70px;gap:28px}.possibility-card{padding:22px}.hall-body h3{font-size:2.352rem}.hall-body p{font-size:1.19rem}.hero-copy .price{font-size:2.24rem}.section-head p{font-size:1.26rem}[data-page=skillez] .blue .grid.three{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}[data-page=skillez] .blue .facility{display:block;padding:18px 13px}[data-page=skillez] .blue .facility h3{font-size:1.12rem;margin-top:14px}[data-page=skillez] .blue .facility p{font-size:0.98rem}.conversion h3{font-size:1.848rem}}
@media(prefers-reduced-motion:reduce){.possibility-card:nth-child(2){transform:none}}
main p{font-weight:700}.form-note,.faq-count,.footer-small{font-weight:600}.value-card>.client-artwork{width:42px;height:42px;object-fit:contain;float:left;margin:0 12px 8px 0}.skill-value>.client-artwork{width:75px;height:75px;float:none;margin:0}.facility>.client-artwork{width:38px;height:38px;object-fit:contain;flex:none}.step>.client-artwork{width:50px;height:50px;object-fit:contain;flex:none}.training-poster-description p{font-size:1.12rem}.blue .orange-text,.navy .orange-text{color:#fa8301}
.list-pills .pill-copy{min-width:0}.navy .list-pills strong{display:inline}.hero-brand-logo{background:white;border-radius:3px}button,input,select,textarea{font-family:inherit}

/* Client clarification, 22 October 2026: supporting type +12%, stronger weights; H1 rules retained. */
@media(min-width:960px){[data-page=skillez] .blue .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.desktop-nav,.js .desktop-nav{gap:8px}.header-inner{gap:12px}.header-inner>.btn{padding-inline:12px}}

/* 27 October: preserve client menu artwork and separate catering from venue setups. */
.meal-menu-artwork{aspect-ratio:auto!important;object-fit:contain!important;width:100%;height:auto;max-height:none;border-radius:18px}.catering-preview{max-width:340px;margin:28px auto 0}.catering-preview>a{display:block;overflow:hidden}.catering-preview .photo{border-radius:18px 18px 0 0}.catering-preview .media-caption{padding:18px}.faq-category>h2{text-align:center;font-weight:800;font-size:clamp(1.95rem,5vw,2.8rem)}
@media(min-width:768px){.food-card .meal-menu-artwork{max-height:780px}.trust-inner:has(>:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}}

.layout-help{font-size:1rem;font-weight:600;line-height:1.5;margin-bottom:18px}
/* Client-supplied high-resolution artwork. Keep full illustrations visible. */
.facility:has(>.client-artwork){flex-direction:column;align-items:flex-start}
.facility>.client-artwork{width:96px;height:96px;object-fit:contain;border-radius:10px;background:#fff}
[data-page=workez] .value-card>.client-artwork{width:88px;height:88px;float:none;margin:0 0 16px}
.hero-brand-logo{background:transparent}

/* 28 October client screenshot amendments. */
.faq-hero .section-head>p{margin-inline:auto;text-align:center}
.journey-photo{aspect-ratio:1/1;object-fit:cover;object-position:50% 20%}
@media(min-width:768px){.thankyou h1{font-size:2.6rem}}
[data-page=workez] .hero h1 .orange-text{font-size:.86em;white-space:nowrap}
@media(min-width:768px){[data-page=workez] .hero h1 .orange-text{font-size:inherit}}

/* Milestones use resolution-independent brand-colour SVG, not screenshot crops. */
.milestone-icon{display:grid;place-items:center;width:64px;height:64px;margin:16px auto;border:2px solid #fa8301;border-radius:50%;background:#edf6fd;color:#2679b6}
.milestone-icon .icon{width:34px;height:34px;stroke-width:1.8}
