:root{--ink:#483329;--muted:#65574f;--paper:#ffffff;--pink:#f02b98;--yellow:#ffdc63;--blue:#168fd1;--purple:#31b9df;--green:#c2e52d;--line:#e7ddd1;--pink-light:#d9147b;--blue-light:#0078b8;--yellow-light:#ffdc38;--purple-light:#0078b8;--green-light:#b9df21}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.6}a{color:inherit}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #006caf;outline-offset:5px}p{margin:0 0 1.1rem;color:var(--muted)}h1,h2,h3{line-height:1.08;letter-spacing:-.035em;margin:0 0 1rem}h1{font-size:clamp(2.7rem,5.6vw,4.85rem);font-weight:900}h2{font-size:clamp(2rem,3.6vw,3.2rem)}h3{font-size:1.45rem}img{max-width:100%;display:block}fieldset{border:0;padding:0;margin:0}legend{font-weight:800;margin-bottom:1rem}label{font-weight:700}small,.small{font-size:.875rem;line-height:1.5}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.topbar{background:var(--ink);color:white;font-size:.875rem;text-align:center;padding:9px 20px;font-weight:700}.header{position:sticky;top:0;background:rgba(255,253,250,.98);z-index:20;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;min-height:90px;gap:25px}.brand{font-size:1.2rem;line-height:.96;font-weight:900;text-decoration:none;letter-spacing:-.035em;max-width:180px;flex-shrink:0}.brand small{display:block;letter-spacing:.14em;font-size:.75rem;margin-top:9px}.nav-links{display:flex;align-items:center;justify-content:flex-end;gap:22px;margin-left:auto}.nav-links a{font-weight:800;text-decoration:none;font-size:.875rem;white-space:nowrap;padding:8px 0}.nav-links a[aria-current=page]{color:#b8176e;border-bottom:3px solid var(--pink)}.nav-links a:hover{color:#b8176e}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 23px;border-radius:99px;font-size:.9375rem;font-weight:800;line-height:1.25;text-decoration:none;border:2px solid var(--ink);background:var(--ink);color:white;transition:transform .16s,background .16s}.button:hover{transform:translateY(-2px);background:#005c96}.button.secondary{background:white;color:var(--ink);border-color:var(--line)}.button.secondary:hover{border-color:var(--ink)}.button.pink{background:var(--pink);border-color:var(--pink);color:#281a22}.button.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.nav-book{white-space:nowrap}.menu-button{display:none;border:1px solid var(--line);background:white;border-radius:12px;padding:10px 14px;font-weight:800}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.hero{padding:65px 0 58px}.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:58px}.eyebrow{font-size:.875rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;margin-bottom:17px}.accent{color:#b8176e}.hero p{font-size:1.2rem;line-height:1.65;max-width:600px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.hero-notes{display:flex;gap:17px;flex-wrap:wrap;margin-top:25px;font-size:.875rem;font-weight:700}.photo-stage{position:relative;padding:20px 0 34px}.photo-stage:before{content:"";position:absolute;inset:0 10px 12px;background:var(--yellow);border-radius:48% 52% 44% 56%;transform:rotate(-4deg)}.hero-photo{position:relative;width:100%;height:435px;object-fit:cover;border-radius:36px;border:7px solid white;box-shadow:0 20px 45px #4338481f;transform:rotate(1.5deg)}.float-note{position:absolute;z-index:1;background:white;padding:15px 22px;border-radius:19px;box-shadow:0 12px 32px #33253b25;border:1px solid var(--line);font-size:.875rem;line-height:1.5}.float-note strong{display:block;font-size:1rem}.note-top{top:0;left:-20px;transform:rotate(-4deg)}.note-bottom{bottom:12px;right:-14px;background:var(--pink-light);transform:rotate(3deg)}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.quick-card{border-radius:24px;padding:26px;text-decoration:none;border:1px solid #26222c08;transition:transform .16s;display:block}.quick-card:hover{transform:translateY(-4px)}.quick-card h3{font-size:1.2rem;letter-spacing:-.025em;margin:14px 0 10px}.quick-card p{font-size:.9375rem;color:#5d4d43;margin:0}.icon{display:flex;justify-content:center;align-items:center;min-height:45px;width:48px;background:rgba(255,255,255,.8);border-radius:15px;font-size:1.65rem}.pink-bg{background:var(--pink-light)}.blue-bg{background:var(--blue-light)}.yellow-bg{background:var(--yellow-light)}.purple-bg{background:var(--purple-light)}.green-bg{background:var(--green-light)}.section{padding:75px 0}.section.compact{padding-top:25px}.center{text-align:center}.section-intro{max-width:750px;margin:0 auto 32px}.section-intro p,.lead{font-size:1.1rem;max-width:740px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{padding:30px;border-radius:26px;border:1px solid #2723300a}.card h3{margin-top:18px}.card p:last-child{margin-bottom:0}.text-link{font-weight:800;text-underline-offset:6px;display:inline-block}.text-link:hover{color:#b8176e}.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}.trust{border:1px solid var(--line);padding:18px;text-align:center;border-radius:18px;background:white;font-weight:800}.feature-band{border-radius:32px;background:var(--ink);color:white;padding:45px;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}.feature-band h2{color:white}.feature-band p{color:#f6e9dd}.party-minis{display:grid;grid-template-columns:1fr 1fr;gap:14px}.party-mini{padding:23px;border-radius:20px;color:var(--ink);line-height:1.4}.party-mini strong{display:block;margin-bottom:6px}.visit-band{background:var(--yellow);padding:35px 40px;border-radius:28px;display:flex;justify-content:space-between;gap:30px;align-items:center}.visit-band h2{font-size:2rem}.visit-band p{color:#4d443c;margin:0}.visit-band .actions{margin:0;flex-shrink:0}.footer{border-top:1px solid var(--line);padding:45px 0 20px;background:white;margin-top:35px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px}.footer h3{font-size:1rem;letter-spacing:0}.footer p,.footer a{font-size:.9375rem}.footer a:not(.brand){display:block;margin-bottom:9px;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);margin-top:25px;padding-top:20px;font-size:.875rem;color:var(--muted);display:flex;gap:15px;justify-content:space-between}.page-hero{padding:60px 0 35px}.page-hero h1{font-size:clamp(2.5rem,4.8vw,4.2rem);max-width:880px}.page-hero p{font-size:1.15rem;max-width:720px}.pill{display:inline-flex;padding:6px 13px;border-radius:99px;font-size:.875rem;font-weight:800;background:white;color:var(--ink)}.page-mood{border-radius:26px;padding:28px;display:flex;align-items:center;gap:25px;margin-bottom:32px}.page-mood p{margin:0}.page-mood h3{margin-bottom:8px}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{border-radius:22px;background:white;border:1px solid var(--line);padding:25px}.step b{display:block;font-size:1.1rem;margin-bottom:12px}.step-number{font-size:2rem;color:#b8176e;font-weight:900;line-height:1;margin-bottom:18px}.price{font-weight:900;font-size:2.3rem;line-height:1.2;letter-spacing:-.04em;margin:17px 0 4px}.price small{font-size:1rem;letter-spacing:0;font-weight:700}.checklist{padding-left:20px;color:#5d4d43;line-height:1.7;margin:20px 0}.price-card{display:flex;flex-direction:column}.price-card .button{margin-top:auto;align-self:flex-start}.price-card h3{min-height:78px}.fee-note{background:var(--ink);color:white;border-radius:22px;padding:25px 30px;margin-top:24px}.fee-note p{color:#f6e9dd;margin:5px 0 0}.planner{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:35px;background:white;border:1px solid var(--line);border-radius:28px;align-items:start}.planner h3{margin-top:0}.form-row{margin-bottom:20px}.form-row label{display:block;margin-bottom:8px}.field{width:100%;min-height:48px;border:1px solid #bcaa98;border-radius:12px;padding:11px 13px;background:white;color:var(--ink)}.form-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.input-help{font-size:.875rem;margin-top:8px}.checkboxes{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0}.checkboxes label{display:flex;gap:8px;align-items:center;font-size:.9375rem;font-weight:600}.checkboxes input{accent-color:#b8176e;width:20px;height:20px}.result-box{padding:28px;border-radius:22px;background:var(--yellow-light)}.result-box p{color:#5d4d43}.result-total{font-size:2.7rem;font-weight:900;letter-spacing:-.045em;line-height:1.2;margin:10px 0}.result-lines{margin:18px 0}.result-line{display:flex;justify-content:space-between;gap:20px;margin-bottom:8px;font-size:.9375rem}.result-line strong{white-space:nowrap}.notice{font-size:.9375rem;border-left:4px solid var(--pink);padding:12px 17px;background:var(--pink-light);margin-top:22px;border-radius:0 12px 12px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px}.photo-card{width:100%;height:350px;object-fit:cover;border-radius:26px}.extra-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.extra{padding:22px;border-radius:18px;border:1px solid var(--line);background:white}.extra h3{font-size:1.08rem;letter-spacing:0}.extra p{margin:0}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.activity-card{border-radius:25px;padding:29px}.activity-card h3{margin:18px 0 12px}.activity-card .pill{margin-bottom:12px}.price-table{width:100%;border-collapse:collapse;font-size:.9375rem;margin-top:15px}.price-table th,.price-table td{text-align:left;padding:11px 8px;border-bottom:1px solid #d8c4ae}.price-table th:last-child,.price-table td:last-child{text-align:right}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.faq-item{border:1px solid var(--line);border-radius:18px;background:white;overflow:hidden}.faq-item summary{padding:22px 24px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-size:1.3rem;flex-shrink:0}.faq-item[open] summary:after{content:"−"}.faq-item[open]{background:var(--blue-light)}.faq-item p{padding:0 24px 20px;margin:0}.faq-item a{text-underline-offset:3px}.date-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.date-chip{background:white;border:1px solid var(--line);padding:7px 12px;border-radius:10px;font-weight:700;font-size:.9375rem}.calendar-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.calendar-cards .card h3{margin-top:0}.guide-options{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:30px}.guide-choice{position:relative}.guide-choice input{position:absolute;top:20px;left:14px;accent-color:#b8176e;width:17px;height:17px}.guide-choice label{display:block;height:100%;padding:20px 14px 20px 39px;background:white;border:2px solid var(--line);border-radius:17px;cursor:pointer;line-height:1.5}.guide-choice input:checked+label{border-color:var(--ink);background:var(--yellow-light)}.guide-choice input:focus-visible+label{outline:3px solid #006caf;outline-offset:3px}.guide-choice label span{font-size:1.4rem;display:block;margin-bottom:8px}.gift-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.gift-surface{background:var(--purple);padding:55px 35px;border-radius:35px;transform:rotate(-2deg)}.gift-card{background:var(--ink);color:white;border-radius:24px;padding:35px;box-shadow:0 20px 30px #45287225;transform:rotate(3deg)}.gift-card .eyebrow{color:var(--yellow)}.gift-card h2{font-size:2.4rem}.gift-card p{color:white;margin:0}.gift-card b{display:block;margin-top:50px;font-size:.875rem}.error-text{color:#a02a4a;font-weight:700;margin:0 0 16px}.hidden,[hidden]{display:none!important}@media(min-width:1600px){.hero-photo{height:450px}}@media(max-width:1100px){.nav{gap:18px}.nav-links{gap:15px}.nav-links a{font-size:.8125rem}.brand{max-width:160px;font-size:1.1rem}.nav-book{padding:11px 17px;font-size:.875rem}.hero-grid{gap:35px}.hero-photo{height:405px}.note-top{left:-10px}.guide-options{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.nav-links{position:absolute;top:100%;left:0;right:0;display:none;background:var(--paper);padding:22px 24px;border-bottom:1px solid var(--line);box-shadow:0 12px 24px #3331;flex-wrap:wrap;justify-content:flex-start;gap:14px 28px}.nav-links.open{display:flex}.nav-links a{font-size:1rem}.nav{min-height:78px;gap:15px}.nav-book{margin-left:auto}.menu-button{display:block}.hero-grid{gap:30px;grid-template-columns:1fr 1fr}.hero h1{font-size:3.4rem}.hero-photo{height:360px}.hero p{font-size:1.05rem}.float-note{padding:12px 15px}.cards,.activity-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:1fr 1fr}.feature-band{gap:25px}.extra-grid,.step-grid{grid-template-columns:1fr 1fr}.trust-row{grid-template-columns:1fr 1fr}.visit-band{flex-wrap:wrap}.calendar-cards{grid-template-columns:1fr}.price-card h3{min-height:0}.guide-options{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.wrap{width:calc(100% - 36px)}.topbar{font-size:.8125rem;padding:9px 12px}.nav{gap:10px}.brand{font-size:1rem;max-width:142px}.brand small{font-size:.625rem}.nav-book{padding:10px 14px;min-height:44px;font-size:.8125rem}.menu-button{padding:9px 11px;font-size:.875rem}.hero{padding:38px 0}.hero-grid{grid-template-columns:1fr;gap:25px}.hero h1{font-size:clamp(2.7rem,11.2vw,4rem)}.hero p{font-size:1.1rem}.hero-photo{height:350px}.photo-stage{margin:15px 10px 0}.note-top{top:-5px;left:-8px}.note-bottom{right:-7px;bottom:8px}.quick-card{padding:22px}.quick-card h3{font-size:1.1rem}.quick-card p{font-size:.875rem}.section{padding:52px 0}.section.compact{padding-top:15px}.cards,.activity-grid,.two-col,.planner,.feature-band,.gift-grid,.faq-grid{grid-template-columns:1fr}.card{padding:27px}.feature-band{padding:30px}.party-mini{padding:20px}.visit-band{padding:28px}.visit-band .actions{flex-shrink:1}.step{padding:22px}.trust{font-size:.9375rem}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1 / -1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.page-hero{padding:40px 0 25px}.page-hero h1{font-size:2.7rem}.page-mood{padding:24px;align-items:flex-start}.planner{padding:23px;gap:22px}.result-box{padding:24px}.extra-grid{grid-template-columns:1fr 1fr}.extra{padding:19px}.guide-options{grid-template-columns:1fr 1fr;gap:10px}.guide-choice label{padding:15px 12px 15px 37px;font-size:.9375rem}.guide-choice input{top:18px;left:12px}.guide-options .guide-choice:last-child{grid-column:1 / -1}.gift-surface{padding:35px 25px;margin-inline:7px}.gift-card{padding:30px}.photo-card{height:285px}}@media(max-width:370px){.nav-book{font-size:.75rem;padding:9px 10px}.brand{max-width:130px;font-size:.9375rem}.quick-grid,.party-minis,.form-cols{grid-template-columns:1fr}.hero-photo{height:300px}.float-note{font-size:.8125rem}.float-note strong{font-size:.875rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;transform:none!important}}
:root{color-scheme:light}
/* Keep navigation usable at narrow widths and when text is enlarged. */
@media(max-width:1100px){.nav-links a{font-size:.875rem}}
@media(max-width:680px){.nav-book{font-size:.875rem}.brand small{font-size:.6875rem}}
@media(max-width:370px){.nav{flex-wrap:wrap;padding-block:12px}.brand{max-width:none;flex:1}.menu-button{order:2}.nav-book{order:3;width:100%;font-size:.9375rem;margin:0}.nav-links{top:100%}.footer-grid{grid-template-columns:1fr}.guide-options{grid-template-columns:1fr}.guide-options .guide-choice:last-child{grid-column:auto}}


/* Studio photography uses the same cheerful cards and open spacing. */
.page-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:45px;align-items:center}.page-hero-grid h1{font-size:clamp(2.5rem,4.1vw,3.6rem)}.page-hero-grid p{font-size:1.125rem}.page-photo-stage{padding:13px;background:var(--yellow-light);border-radius:35px;transform:rotate(1deg)}.page-hero-photo{width:100%;height:345px;object-fit:cover;border-radius:25px}.card-photo{width:calc(100% + 60px);max-width:none;height:210px;object-fit:cover;margin:-30px -30px 25px;border-radius:25px 25px 0 0}.card:has(.card-photo) h3{margin-top:0}.activity-photo{width:calc(100% + 58px);max-width:none;height:220px;object-fit:cover;margin:-29px -29px 25px;border-radius:24px 24px 0 0}.activity-card:has(.activity-photo) h3{margin-top:0}.quick-photo{width:calc(100% + 52px);max-width:none;height:145px;object-fit:cover;margin:-26px -26px 23px;border-radius:23px 23px 0 0}.quick-card:has(.quick-photo) h3{margin-top:0}.photo-caption{margin:12px 0 0;font-size:.875rem;color:var(--muted)}
@media(max-width:900px){.page-hero-grid{gap:25px;grid-template-columns:1fr 1fr}.page-hero-grid h1{font-size:2.7rem}.page-hero-photo{height:330px}}
@media(max-width:680px){.page-hero-grid{grid-template-columns:1fr;gap:27px}.page-hero-grid h1{font-size:2.7rem}.page-photo-stage{margin:0 5px}.page-hero-photo{height:300px}.card-photo{width:calc(100% + 54px);margin:-27px -27px 24px;height:245px}.quick-photo{width:calc(100% + 44px);margin:-22px -22px 20px;height:135px}}

/* Authentic studio logo across every page. */
.brand{display:block;flex-shrink:0;max-width:none}.brand-logo{display:block;width:104px;height:auto;background:#fff;border-radius:8px}.nav{padding-top:8px;padding-bottom:8px}.footer-logo{width:170px}.footer .brand{display:inline-block}@media(max-width:680px){.brand-logo{width:82px}.footer-logo{width:150px}}

.corporate-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}.corporate-gallery figure{margin:0;min-width:0}.corporate-gallery img{display:block;width:100%;height:380px;object-fit:cover;object-position:center 35%;border-radius:24px;background:white}.corporate-gallery figure:nth-child(5) img{object-fit:contain;background:var(--purple-light);padding:8px}.corporate-gallery figcaption{font-size:1rem;font-weight:700;margin-top:13px;line-height:1.5}.gallery-actions{justify-content:center;margin-top:30px}@media(max-width:900px){.corporate-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.corporate-gallery img{height:350px}}@media(max-width:680px){.corporate-gallery{grid-template-columns:1fr;gap:26px}.corporate-gallery img{height:auto;aspect-ratio:4/5;max-height:520px}.corporate-gallery figure:first-child img{aspect-ratio:1}.corporate-gallery figure:nth-child(5) img{aspect-ratio:4/5}}
@media(min-width:1101px){.nav-links{flex-wrap:wrap;column-gap:18px;row-gap:2px;max-width:800px}.nav-links a{padding:5px 0}}
.explore-photo-button{display:block;position:relative;text-decoration:none;margin:-32px -32px 26px;overflow:hidden;border-radius:25px 25px 0 0}.explore-photo-button .card-photo{width:100%;margin:0;height:250px;object-fit:cover;border-radius:0}.explore-photo-button span{position:absolute;bottom:16px;left:16px;right:16px;background:white;padding:12px 16px;border-radius:99px;text-align:center;font-weight:800;box-shadow:0 3px 14px #27233020}.explore-photo-button:hover span{background:var(--yellow)}@media(max-width:680px){.explore-photo-button{margin:-27px -27px 24px}.explore-photo-button .card-photo{height:245px}}

/* Warm studio colors: wood, teal, fuchsia and lime. */
.header{background:rgba(255,255,255,.98)}
.button{background:#006caf;border-color:#006caf;color:#fff}
.button:hover{background:#005c96;border-color:#005c96}
.button.secondary{background:#fffdf8;border-color:#006caf;color:#005c96}
.button.secondary:hover{background:var(--blue-light);border-color:#005c96;color:#005c96}
.button.pink{background:#bc1872;border-color:#bc1872;color:#fff}
.button.pink:hover{background:#9f125e;border-color:#9f125e}
.button.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}
.button.yellow:hover{background:#f5cd45;border-color:#f5cd45;color:var(--ink)}
.topbar{background:#006caf}
.feature-band,.fee-note,.gift-card{background:#684832}
.footer{background:#b6a38e}
.gift-surface{background:var(--blue-light)}
.card{border:1px solid rgba(104,72,50,.07)}
.text-link{color:#005c96}

/* Brighter studio-inspired accents, balanced by wood-tone text. */
.card.pink-bg{border-top:5px solid var(--pink)}
.card.blue-bg{border-top:5px solid var(--blue)}
.card.green-bg{border-top:5px solid var(--green)}
.card.purple-bg{border-top:5px solid var(--purple)}
.card.yellow-bg{border-top:5px solid var(--yellow)}

/* Full studio colors with clear contrast. */
.pink-bg,.blue-bg,.purple-bg{color:#fff}
.pink-bg p,.blue-bg p,.purple-bg p,.pink-bg .checklist,.blue-bg .checklist,.purple-bg .checklist{color:#fff}
.pink-bg .text-link,.blue-bg .text-link,.purple-bg .text-link{color:#fff}
.pink-bg .eyebrow,.blue-bg .eyebrow,.purple-bg .eyebrow{color:#fff}
.pink-bg .card,.blue-bg .card,.purple-bg .card,.pink-bg .step,.blue-bg .step,.purple-bg .step{color:var(--ink)}
.pink-bg .card p,.blue-bg .card p,.purple-bg .card p,.pink-bg .step p,.blue-bg .step p,.purple-bg .step p{color:var(--muted)}
.card.pink-bg p,.card.blue-bg p,.card.purple-bg p{color:#fff}
.card.pink-bg,.card.blue-bg,.card.purple-bg{color:#fff}
.note-bottom,.notice{background:#fff;color:var(--ink);border-color:var(--pink)}
.gift-surface{background:#168fd1}
.feature-band,.fee-note,.gift-card{background:#695545}
.feature-band p,.fee-note p{color:#fff}
.page-photo-stage{background:#b9df21}
.card{border-top-width:0!important}
.footer p{color:#493c31}

.included-panel,.included-panel p{color:#fff}
#booking-guide .guide-choice:nth-child(-n+3) label{color:#fff}

.footer{background-color:#b6a38e;background-image:linear-gradient(#fff9 0 0),url('/assets/studio-wood-grain.png');background-size:auto,768px auto;color:#483329}
.footer p{color:#493c31}
.page-photo-stage{background-color:#b6a38e;background-image:url('/assets/studio-wood-grain.png');background-size:768px auto}

/* Bright, welcoming finish without the wood footer or brown party bands. */
.footer{background:#fff;background-image:none;border-top:5px solid var(--blue)}
.footer p{color:var(--muted)}
.feature-band,.fee-note{background:#0078b8}
.feature-band p,.fee-note p{color:#fff}

.feature-band{background:#0078b8}
.birthday-strip-photo{width:100%;height:370px;object-fit:cover;object-position:center 45%;border-radius:23px}
@media(max-width:680px){.birthday-strip-photo{height:340px}}

.birthday-strip-photo{height:340px;object-position:center center}
@media(max-width:680px){.birthday-strip-photo{height:auto;aspect-ratio:3/2}}

/* Lighter, brighter studio blue with readable dark text. */
:root{--blue:#35a4de;--blue-light:#2699d4}
.blue-bg,.blue-bg p,.blue-bg .text-link,.blue-bg .eyebrow,.card.blue-bg,.card.blue-bg p{color:#09273a}
.feature-band{background:#2699d4;color:#09273a}
.feature-band p{color:#09273a}
.feature-band .eyebrow{color:#09273a!important}

.first-visit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.first-visit .step{border-top:4px solid var(--blue)}
.first-visit .step:nth-child(2){border-top-color:var(--pink)}
.first-visit .step:nth-child(3){border-top-color:var(--green)}
.first-visit .step-number{display:block;margin-bottom:14px}
.first-visit-note{text-align:center;margin-top:24px;font-size:.9375rem}
.adult-photo-pair{display:grid;grid-template-columns:1.15fr 1fr;gap:12px;align-items:center}
.adult-photo-pair img{width:100%;height:330px;object-fit:cover;border-radius:22px}
.adult-photo-pair img:first-child{object-position:65% center}
.hero .actions .text-link{font-size:.9375rem}
/* White activity cards give the bright accents and photographs space. */
.cards .card:has(.card-photo){background:#fff;color:var(--ink);border:1px solid var(--line);border-bottom:5px solid var(--blue)}
.cards .card.pink-bg:has(.card-photo){border-bottom-color:var(--pink)}
.cards .card.green-bg:has(.card-photo){border-bottom-color:var(--green)}
.cards .card.yellow-bg:has(.card-photo){border-bottom-color:var(--yellow)}
.cards .card:has(.card-photo) p{color:var(--muted)}
@media(max-width:680px){.first-visit-grid{grid-template-columns:1fr}.adult-photo-pair img{height:240px}}

.owner-photo{height:480px;object-fit:cover;object-position:center 42%}
@media(max-width:680px){.owner-photo{height:400px}}

.hero-hours{margin:18px 0 0;color:#005c96;font-size:1rem;font-weight:700}
.home-visit-answers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px;align-items:start}
.home-reserve-actions{justify-content:center;margin-top:26px}
.home-visit-answers .faq-item{border-top:3px solid var(--blue)}
@media(max-width:900px){.home-visit-answers{grid-template-columns:1fr}}

.studio-arrival{align-items:center}.studio-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:23px;background:#eee}.studio-video>a{display:inline-block;margin-top:10px;color:#005c96}.studio-arrival h2{font-size:clamp(2rem,3.4vw,3rem)}

.social-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.social-gallery figure{margin:0}.social-gallery img{width:100%;height:250px;object-fit:cover;border-radius:20px}
.social-gallery figcaption{font-size:.9375rem;font-weight:700;padding:12px 3px;color:var(--ink)}
.social-actions{justify-content:center;margin-top:20px}
.facebook-feed{border:1px solid var(--line);border-radius:18px;margin:24px auto 0;max-width:620px;background:#fff}
.facebook-feed summary{cursor:pointer;font-weight:700;padding:18px 22px}
.facebook-feed-content{padding:0 22px 22px;text-align:center}
.facebook-feed-target{width:100%;margin:18px auto}.facebook-feed-target iframe{max-width:100%;display:block;margin:auto}
@media(max-width:900px){.social-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.social-gallery img{height:190px}.social-gallery{gap:12px}}

/* Compact captions and complete project photos. */
.page-home .topbar{padding:6px 16px;font-size:.8125rem}
.page-home .quick-card{padding:18px 20px}
.page-home .quick-photo{width:calc(100% + 40px);margin:-18px -20px 16px;height:190px;object-fit:contain;background:#fff}
.page-home .quick-card h3{font-size:1.1rem;margin-bottom:7px}
.page-home .quick-card p{font-size:.875rem;line-height:1.45}
.page-home .home-welcome-note{padding:9px 12px;font-size:.875rem;bottom:18px;right:18px}
.page-home .cards .card-photo,.activity-grid .card-photo,.activity-grid .activity-photo{height:260px;object-fit:contain;background:#fff}
.activity-switcher{margin:-30px -30px 22px;overflow:hidden;border-radius:25px 25px 0 0;background:#fff}
.activity-switcher .card-photo{width:100%;margin:0;border-radius:0;height:260px;object-fit:contain}
.switcher-photos{position:relative;background:#fff}
.switcher-photos img[hidden]{display:none}
.switcher-controls{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;padding:10px;background:#fff}
.switcher-controls button{border:1px solid #d1dce3;border-radius:99px;background:#fff;color:#09273a;padding:7px 10px;font-size:.875rem;min-height:38px}
.switcher-controls button[aria-pressed="true"]{background:var(--green);border-color:var(--green);font-weight:700}
.social-gallery img{height:300px;object-fit:contain;background:#f5f7f8}
.social-gallery figcaption{padding:8px 3px;font-size:.875rem;line-height:1.4}
@media(max-width:680px){.page-home .quick-photo{height:180px}.page-home .cards .card-photo,.activity-grid .card-photo,.activity-grid .activity-photo{height:240px}.activity-switcher{margin:-27px -27px 20px}.activity-switcher .card-photo{height:240px}.social-gallery img{height:240px}}

/* Short colored captions, with generous readable click targets. */
.page-home .quick-card{padding:0 0 14px;overflow:hidden}
.page-home .quick-photo{width:100%;max-width:100%;margin:0 0 12px;height:190px;border-radius:23px 23px 0 0}
.page-home .quick-card h3{font-size:1.2rem;line-height:1.2;margin:0 16px;font-weight:800;min-height:44px;display:flex;align-items:center}
.page-home .quick-card p{margin:4px 16px 0;font-size:.875rem;line-height:1.4}
.instagram-live{margin:34px auto 20px;text-align:center}
.instagram-live h3{margin-bottom:20px}
.instagram-embed-wrap{width:min(100%,540px);margin:auto;text-align:left}
.instagram-embed-wrap .instagram-media,.instagram-embed-wrap iframe{max-width:100%!important;min-width:0!important;width:100%!important}
.instagram-fallback{margin-top:14px}
@media(max-width:680px){.page-home .quick-photo{height:180px}.page-home .quick-card h3{font-size:1.125rem}.instagram-live{margin-top:25px}}


/* Bold studio colors continue below the photographs. */
:root{--pink-light:#d9147b;--blue-light:#2699d4;--purple-light:#0078b8;--green-light:#b9df21;--yellow-light:#ffdc38}
.cards .card:has(.card-photo){background:var(--blue-light);border:0;border-bottom:0;color:#09273a}
.cards .card.pink-bg:has(.card-photo){background:var(--pink-light);color:#fff}
.cards .card.green-bg:has(.card-photo){background:var(--green-light);color:var(--ink)}
.cards .card.yellow-bg:has(.card-photo){background:var(--yellow-light);color:var(--ink)}
.cards .card.purple-bg:has(.card-photo){background:var(--purple-light);color:#fff}
.cards .card:has(.card-photo) p{color:inherit}
.quick-card.pink-bg,.quick-card.pink-bg p,.quick-card.purple-bg,.quick-card.purple-bg p{color:#fff}
.quick-card.blue-bg,.quick-card.blue-bg p{color:#09273a}
.quick-card.yellow-bg,.quick-card.yellow-bg p{color:var(--ink)}
.button.secondary:hover{background:#e4f3fc;color:#005c96}
.feature-band{background:#0078b8;color:#fff}
.feature-band h2,.feature-band p,.feature-band .eyebrow{color:#fff!important}
.page-photo-stage{background:var(--green);background-image:none}
.hero .actions{align-items:center}
.hero .actions .text-link{flex-basis:100%;margin-top:4px}

/* Rounded artist lettering and handwritten accents, with clean body copy. */
@font-face{font-family:TPP Fredoka;src:url('/assets/fonts/fredoka-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:TPP Kalam;src:url('/assets/fonts/kalam-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
h1,h2,h3{font-family:'TPP Fredoka','Trebuchet MS',sans-serif;font-weight:700;letter-spacing:-.015em;line-height:1.14}
.hero h1{font-size:clamp(2.8rem,5.4vw,4.7rem);line-height:1.12}
.hero h1 .accent,.page-hero h1 .accent{font-family:'TPP Kalam','TPP Fredoka',sans-serif;letter-spacing:-.035em;line-height:1.22}
.home-welcome-note strong{font-family:'TPP Kalam','TPP Fredoka',sans-serif;font-size:1.2rem;line-height:1.3}
.quick-card h3,.card h3{letter-spacing:0;line-height:1.2}
.eyebrow{letter-spacing:.08em}
.page-home .quick-card h3{font-size:1.3rem;min-height:50px}
@media(max-width:680px){.hero h1{font-size:clamp(2.55rem,10.2vw,3.8rem)}.page-home .quick-card h3{font-size:1.15rem}.home-welcome-note strong{font-size:1.1rem}}

/* First-visit essentials remain close to the primary booking action. */
.hero .visit-value{font-size:.9375rem;line-height:1.6;margin:22px 0 0;padding-top:16px;border-top:2px solid var(--yellow);max-width:560px;color:var(--ink)}
.hero .visit-value strong{font-weight:800}
.hero .eyebrow{max-width:540px;line-height:1.5}

/* A clear walk-in menu in the studio's bright colors. */
.price-menu-wrap{border:2px solid var(--blue);border-radius:24px;overflow:hidden;background:#fff}
.activity-prices{width:100%;border-collapse:collapse;text-align:left;font-size:1rem}
.activity-prices caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.activity-prices thead{background:var(--yellow);color:var(--ink)}
.activity-prices th,.activity-prices td{padding:17px 22px;line-height:1.5}
.activity-prices tbody th{font-weight:700}.activity-prices tbody td:nth-child(2){font-weight:800;white-space:nowrap;color:#005c96}
.activity-prices tbody tr+tr{border-top:1px solid var(--line)}
.activity-prices tbody tr:nth-child(even){background:#f7fbfd}
.price-menu-note{margin-top:18px;max-width:800px;margin-inline:auto;text-align:center}
@media(max-width:600px){.activity-prices{font-size:.875rem}.activity-prices th,.activity-prices td{padding:13px 10px}.activity-prices tbody td:nth-child(2){white-space:normal}.price-menu-wrap{border-radius:18px}}

.menu-addon-label{font-size:.875rem;line-height:1.5;font-weight:700;color:#a01461}

/* A sunnier, more vivid studio welcome. */
:root{--pink:#ff43a4;--pink-light:#ff59ad;--blue:#27b4f2;--blue-light:#35b9f2;--yellow:#ffdd32;--yellow-light:#ffdd32;--green:#c9ef2d;--green-light:#c9ef2d;--ink:#362820}
.header{border-bottom:5px solid transparent;border-image:linear-gradient(90deg,var(--pink) 0 25%,var(--yellow) 25% 50%,var(--blue) 50% 75%,var(--green) 75%) 1}
.page-home .hero{background:var(--yellow);border-radius:0 0 36px 36px;padding:48px 36px 38px;margin-bottom:28px}
.page-home .hero h1{color:#083650;font-size:clamp(2.8rem,5vw,4.4rem)}
.page-home .hero .accent{color:#98004e}
.page-home .hero p{color:#362820}
.page-home .hero .eyebrow{color:#083650}
.page-home .home-photo-single{background:var(--pink);padding:12px;box-shadow:8px 8px 0 #083650}
.page-home .hero .visit-value{border-top-color:#c69c00}
.pink-bg,.pink-bg p,.pink-bg .eyebrow,.pink-bg .text-link,.pink-bg .checklist,.card.pink-bg,.card.pink-bg p,.quick-card.pink-bg,.quick-card.pink-bg p,.cards .card.pink-bg:has(.card-photo){color:#362032}
.blue-bg,.blue-bg p,.blue-bg .eyebrow,.blue-bg .text-link,.blue-bg .checklist,.card.blue-bg,.card.blue-bg p,.quick-card.blue-bg,.quick-card.blue-bg p,.cards .card.blue-bg:has(.card-photo){color:#082d42}
.cards .card.pink-bg:has(.card-photo) p,.cards .card.blue-bg:has(.card-photo) p{color:inherit}
.button.pink{background:#bc1872;border-color:#bc1872;color:#fff}
.visit-band{background:var(--yellow);border-bottom:6px solid var(--pink)}
.footer{border-top:8px solid var(--green)}
.first-visit .step-number{color:#005c96;font-weight:800}
.page-home .quick-card{box-shadow:0 5px 0 #36282014}
@media(max-width:680px){.page-home .hero{padding:32px 20px;border-radius:0 0 26px 26px}.page-home .hero h1{font-size:clamp(2.4rem,9.6vw,3.7rem)}.page-home .home-photo-single{box-shadow:5px 5px 0 #083650}}

.fun-chooser{background:var(--blue-light);color:#082d42;border-radius:28px;padding:32px;text-align:center}
.fun-chooser p{color:#082d42}.fun-options,.menu-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:20px 0}
.fun-options button,.menu-filters button{min-height:46px;border:2px solid #005c96;border-radius:99px;padding:11px 19px;font-weight:800;background:white;color:#083650;cursor:pointer;transition:transform .16s}
.fun-options button:hover,.menu-filters button:hover{transform:translateY(-2px)}
.fun-options button[aria-pressed=true],.menu-filters button[aria-pressed=true]{background:var(--green);border-color:#345100;color:#243400}
.fun-result{background:white;border-radius:22px;padding:25px;margin-top:20px;max-width:760px;margin-inline:auto}.fun-result p{color:var(--ink)}
.page-home .quick-card:hover{transform:translateY(-5px);box-shadow:0 9px 0 #36282018}
.activity-prices tr[hidden]{display:none}
@media(max-width:600px){.fun-chooser{padding:25px 18px}.fun-options{display:grid;grid-template-columns:1fr 1fr}.fun-options button{padding:12px 8px;font-size:.875rem}.fun-result{padding:23px 18px}}

.gift-photo{padding:10px;background:var(--pink);border-radius:28px;align-self:center}.gift-photo img{width:100%;height:auto;border-radius:20px}

.studio-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:-30px -30px 24px;background:#fff;border-radius:25px 25px 0 0;overflow:hidden}.studio-photo-pair img{width:100%;height:280px;object-fit:contain}.studio-extra-photo{width:100%;height:260px;object-fit:contain;background:#fff;border-radius:16px;margin-top:18px}@media(max-width:680px){.studio-photo-pair{margin:-27px -27px 24px}.studio-photo-pair img{height:300px}}

/* The main choices are visible at the top on every screen. */
.header .nav{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:18px}
.header .nav-links{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-left:0;max-width:none;position:static;background:transparent;padding:0;border:0;box-shadow:none;width:auto}
.header .nav-links a{display:flex;align-items:center;justify-content:center;white-space:normal;text-align:center;min-height:42px;padding:8px 10px;border-radius:13px;border:2px solid transparent;font-size:.875rem;line-height:1.25;color:#082d42}
.header .nav-links a:nth-child(1){background:var(--yellow)}
.header .nav-links a:nth-child(2){background:var(--pink);color:#362032}
.header .nav-links a:nth-child(3){background:var(--blue)}
.header .nav-links a:nth-child(4){background:var(--green)}
.header .nav-links a:nth-child(5){background:#0078b8;color:#fff}
.header .nav-links a:nth-child(6){background:white;border-color:#168fd1}
.header .nav-links a[aria-current=page]{border-color:#082d42;text-decoration:underline;text-underline-offset:4px}
.header .nav-links a:hover{border-color:#082d42}
.header .menu-button{display:none!important}.header .nav-book{display:inline-flex}
@media(max-width:680px){.header{position:static}.header .nav{grid-template-columns:1fr auto;gap:10px;padding-block:10px}.header .nav-links{grid-column:1/-1;grid-row:2;gap:6px}.header .nav-links a{font-size:.875rem;padding:8px 5px;min-height:48px}.header .nav-book{width:auto;grid-column:2;grid-row:1;margin:0}.header .brand-logo{width:72px}}

/* Restore a full-width clickable navigation bar beneath the logo. */
.header .nav{grid-template-columns:1fr auto;gap:10px 20px;padding-block:10px}
.header .brand{grid-column:1;grid-row:1}
.header .nav-book{grid-column:2;grid-row:1}
.header .nav-links{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border:2px solid #082d42;border-radius:16px;overflow:hidden;margin-bottom:4px}
.header .nav-links a{border-radius:0;min-height:50px;padding:10px 8px;border:0;border-right:1px solid #082d42;font-size:.9375rem}
.header .nav-links a:last-child{border-right:0}
.header .nav-links a:hover,.header .nav-links a:focus-visible{box-shadow:inset 0 -4px 0 #082d42}
.header .nav-links a[aria-current=page]{box-shadow:inset 0 -4px 0 #082d42}
@media(max-width:800px){.header .nav-links{grid-template-columns:repeat(3,minmax(0,1fr))}.header .nav-links a{font-size:.875rem}.header .nav-links a:nth-child(-n+3){border-bottom:1px solid #082d42}.header .nav-links a:nth-child(3){border-right:0}}

/* An inviting creative studio for every age, with cleaner typography and details. */
h2,h3{font-family:'Trebuchet MS',Arial,sans-serif;font-weight:700;letter-spacing:-.025em;line-height:1.18}
.hero h1 .accent,.page-hero h1 .accent{font-family:'TPP Fredoka','Trebuchet MS',sans-serif;letter-spacing:-.02em;line-height:1.16}
.home-welcome-note strong{font-family:'Trebuchet MS',Arial,sans-serif}
.card,.quick-card,.fun-chooser,.fun-result,.gift-photo,.visit-band{border-radius:16px}
.button,.fun-options button,.menu-filters button{border-radius:12px}
.card .icon,.quick-card .icon{display:none}
.hero-photo img,.home-photo-single,.float-note,.gift-surface,.gift-card{transform:none}
.page-home .home-photo-single{box-shadow:0 8px 24px #0836501c;padding:9px;border-radius:20px}
.page-home .quick-card,.page-home .quick-card:hover{box-shadow:none;transform:none}
.quick-card:hover{transform:none}
.card h3,.quick-card h3{font-size:1.4rem}
.gift-reasons{grid-template-columns:repeat(4,minmax(0,1fr))}
.gift-reasons .card{padding:26px 22px}
.gift-reasons h3{font-size:1.35rem}
@media(max-width:950px){.gift-reasons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.gift-reasons{grid-template-columns:1fr}}

/* Four balanced booking choices on the homepage. */
.page-home .hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:560px}
.page-home .hero .actions .button{width:100%;min-height:54px;padding:12px 14px;text-align:center}
@media(max-width:380px){.page-home .hero .actions{grid-template-columns:1fr}}

.signup-band{display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--yellow);border-radius:18px;padding:32px}.signup-band h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:10px}.signup-band p{margin-bottom:0;color:var(--ink)}.signup-note{margin-top:10px;text-align:center}.page-home .hero p{max-width:490px}@media(max-width:680px){.signup-band{display:block;padding:25px}.signup-band .button{margin-top:20px}.signup-note{text-align:left}}

/* A clear first-visit homepage with one purpose per section. */
.page-home .hero{padding-block:44px;margin-bottom:18px}.page-home .section{padding-block:48px}.page-home .section-intro{margin-bottom:28px}.home-essentials{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;padding:20px 14px;border-bottom:1px solid var(--line);font-weight:700;color:#083650}.home-essentials span{white-space:nowrap}.home-activities .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.activity-tile{text-decoration:none;display:block;padding:0;overflow:hidden;transition:box-shadow .2s}.activity-tile:hover{box-shadow:0 6px 20px #08365020}.home-activities .activity-tile .card-photo{width:100%;height:210px;margin:0;border-radius:0;object-fit:contain;background:white}.activity-tile h3{margin:0;padding:20px;font-size:1.35rem}.home-activities .home-reserve-actions{justify-content:center;align-items:center;gap:22px;margin-top:28px}.home-reviews{grid-template-columns:repeat(2,minmax(0,1fr))}.home-arrival{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;border-top:2px solid var(--blue);padding-top:32px}.home-arrival .actions{display:flex;flex-direction:column;align-items:stretch}.home-arrival p:last-child{margin:0}.page-home .signup-band{padding:30px}.page-home .home-photo-single{align-self:center}
@media(max-width:680px){.page-home .section{padding-block:32px}.home-essentials{gap:10px 18px;font-size:.9375rem}.home-activities .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.home-activities .activity-tile .card-photo{height:165px}.activity-tile h3{font-size:1.1rem;padding:16px 12px}.home-reviews,.home-arrival{grid-template-columns:1fr}.home-arrival .actions{max-width:360px}.page-home .hero{padding-block:30px}}

/* Compact, clear navigation and fewer competing homepage actions. */
.header{border-bottom-width:3px}
.header .nav{grid-template-columns:64px minmax(0,1fr) auto;gap:16px;min-height:80px;padding-block:8px}
.header .brand{grid-column:1;grid-row:1}
.header .brand-logo{width:64px}
.header .nav-links{grid-column:2;grid-row:1;display:flex!important;align-items:center;justify-content:center;gap:4px;border:0;border-radius:0;overflow:visible;margin:0}
.header .nav-links a{background:transparent!important;color:#082d42!important;border:0!important;border-radius:6px;min-height:44px;padding:8px;font-size:.875rem;line-height:1.3;box-shadow:none;text-decoration:none}
.header .nav-links a:hover,.header .nav-links a:focus-visible{background:#e8f6fc!important;box-shadow:none}
.header .nav-links a[aria-current=page]{box-shadow:inset 0 -3px 0 #0078b8;text-decoration:none}
.header .nav-book{grid-column:3;grid-row:1;min-height:44px;padding:10px 16px;font-size:.875rem}
.topbar,.page-home .topbar{padding:4px 12px;font-size:.8125rem}
.page-home .hero .actions{display:flex;flex-wrap:wrap;gap:12px}
.page-home .hero .actions .button{width:auto;min-height:48px;padding:12px 18px}
.page-home .hero .actions .button:first-child{flex-basis:100%;width:max-content;max-width:220px}
@media(max-width:1080px){.header .nav{grid-template-columns:56px minmax(0,1fr) auto;gap:8px}.header .brand-logo{width:56px}.header .nav-links a{padding:7px 6px;font-size:.875rem}.header .nav-book{padding:10px 12px}}
@media(max-width:900px){.header .nav{grid-template-columns:56px 1fr;min-height:0;gap:6px 14px}.header .nav-book{grid-column:2;grid-row:1;justify-self:end;width:auto}.header .nav-links{grid-column:1/-1;grid-row:2;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;border-top:1px solid var(--line);padding-top:4px}.header .nav-links a{min-height:44px;padding:7px 5px}.header{position:static}}
@media(max-width:380px){.page-home .hero .actions .button{width:100%;max-width:none!important}.header .nav-links a{font-size:.875rem}}

/* Clear adult event access and comfortable phone layouts. */
.header .nav-links a.nav-adult{background:#e1f3fc!important;color:#083650!important;font-weight:800}
.page-home .hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:540px}
.page-home .hero .actions .button,.page-home .hero .actions .button:first-child{width:100%;max-width:none;min-height:50px;padding:12px;text-align:center}
.adult-button{background:#0078b8;border-color:#0078b8;color:white}
.adult-outing-panel{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:36px;align-items:center;background:#e1f3fc;border-radius:20px;padding:28px;color:#083650}
.adult-outing-panel img{width:100%;height:300px;object-fit:cover;border-radius:14px}.adult-outing-panel p{color:#24495c;max-width:560px}.adult-outing-panel h2{font-size:clamp(1.8rem,3vw,2.7rem)}
.page-home .home-adult{padding-block:32px 12px}
@media(max-width:680px){
html{scroll-padding-top:16px}.wrap{width:calc(100% - 32px)}
.header .nav{gap:8px 12px;padding-block:8px}.header .nav-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding-top:8px}
.header .nav-links a{min-height:46px;padding:9px 8px;border-radius:8px;background:#f4f8fa!important;font-size:.875rem;line-height:1.3}
.header .nav-links a.nav-adult{background:#0078b8!important;color:white!important}
.hero-grid,.page-hero-grid{gap:24px;grid-template-columns:minmax(0,1fr)}
.page-home .hero{width:100%;padding:26px 16px}.hero .eyebrow,.page-hero .eyebrow{letter-spacing:.035em;line-height:1.5}
.hero p,.page-hero p{font-size:1rem;line-height:1.6}.page-home .hero h1{font-size:clamp(2.25rem,9.5vw,3.3rem)}
.page-home .hero .actions{gap:8px}.page-home .hero .actions .button{font-size:.875rem;min-height:52px;padding:10px 8px}
.page-home .home-photo-single{max-width:430px}.page-home .home-photo-single>img{height:260px;border-radius:14px}.home-welcome-note{right:18px;bottom:18px;padding:10px 12px}
.home-essentials{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:center;font-size:.875rem;padding:16px 0}.home-essentials span{white-space:normal}
.adult-outing-panel{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px}.adult-outing-panel img{height:210px}.adult-outing-panel .button{width:100%;text-align:center}.page-home .home-adult{padding-block:24px 8px}
.page-hero{padding-block:28px}.page-hero h1{font-size:clamp(2rem,9vw,3rem)}
.actions .button{max-width:100%;white-space:normal;text-align:center}.card,.page-hero-grid>div,.hero-grid>div{min-width:0}.section{padding-block:36px}
.home-activities .activity-tile .card-photo{height:140px}.activity-tile h3{font-size:1rem;padding:14px 10px}
.signup-band .button{width:100%;text-align:center}.footer-grid{gap:28px}.footer a{padding-block:6px}
}
@media(max-width:380px){.page-home .hero .actions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-welcome-note{font-size:.875rem}}

/* Equal space for family celebrations and adult gatherings. */
.gathering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gathering-card{border:1px solid #cce5f1;border-radius:18px;overflow:hidden;background:#f1f9fd;color:#083650}.gathering-card>img{width:100%;height:240px;object-fit:cover}.gathering-card>div{padding:24px}.gathering-card p{color:#24495c}.gathering-card .button{background:white;border-color:#b6d7e7;color:#083650}.page-home .home-gatherings{padding-block:32px 12px}.home-gatherings .section-intro{max-width:680px}
@media(max-width:680px){.gathering-grid{grid-template-columns:minmax(0,1fr);gap:18px}.gathering-card>img{height:200px}.gathering-card>div{padding:20px}.gathering-card .button{width:100%;text-align:center}.page-home .home-gatherings{padding-block:24px 8px}}

/* Keep the seventh navigation link balanced and touch-friendly. */
@media(min-width:901px) and (max-width:1200px){.header .nav-links{flex-wrap:wrap}.header .nav-links a{padding:7px 6px}}
@media(max-width:680px){.header .nav-links a:last-child:nth-child(odd){grid-column:1/-1}}

/* Simple word links keep navigation clear without duplicate button shapes. */
.header .nav-links a,.header .nav-links a.nav-adult{background:transparent!important;border-radius:0;color:#083650!important;font-weight:700}
.header .nav-links a:hover,.header .nav-links a:focus-visible{background:transparent!important;text-decoration:underline;text-underline-offset:5px}
.header .nav-book{background:transparent;color:#083650;border:0;border-radius:0;box-shadow:none;padding:8px 4px;text-decoration:underline;text-underline-offset:5px}
.page-home .hero .hero-text-links{display:flex;flex-wrap:wrap;gap:8px 24px;max-width:none}
.hero-text-links a{display:inline-flex;align-items:center;min-height:44px;color:#083650;font-weight:700;text-decoration:underline;text-underline-offset:5px;font-size:1rem}
@media(max-width:680px){.header .nav-links{gap:0;padding-top:4px}.header .nav-links a{min-height:44px;padding:7px 4px}.page-home .hero .hero-text-links{display:flex;gap:4px 20px}}

/* Compact navigation with a soft blue studio backdrop. */
.header{background:#e3f5fc;border-image:none;border-bottom:1px solid #b8dce9;position:sticky;top:0}
.header .nav{display:grid;grid-template-columns:52px minmax(0,1fr) auto;min-height:68px;padding-block:6px;gap:12px}
.header .brand-logo{width:52px;border-radius:7px}
.header .nav-links{display:flex!important;flex-wrap:nowrap;grid-column:2;grid-row:1;gap:0;padding:0;border:0;justify-content:center}
.header .nav-links a{padding:8px 7px;min-height:44px;white-space:nowrap;font-size:.875rem;background:transparent!important}
.header .nav-book{grid-column:3;grid-row:1;justify-self:end;padding:8px 4px;font-size:.875rem;min-height:44px}
.header .menu-button{display:none!important}
@media(max-width:1100px){
.header .nav{grid-template-columns:48px minmax(0,1fr) auto;gap:12px;min-height:60px;padding-block:5px}
.header .brand-logo{width:48px}
.header .nav-book{grid-column:2;justify-self:end;margin:0}
.header .menu-button{display:block!important;grid-column:3;grid-row:1;min-height:44px;padding:8px 12px;background:transparent;border:1px solid #9cbfce;border-radius:7px;color:#083650;font-size:.875rem;cursor:pointer}
.header .nav-links{display:none!important;grid-column:1/-1;grid-row:2;margin:0;padding:8px 0 4px;border-top:1px solid #b8dce9;width:100%;position:static;box-shadow:none;background:transparent}
.header .nav-links.open{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.header .nav-links a{white-space:normal;justify-content:flex-start;text-align:left;padding:10px 4px;font-size:.9375rem;min-height:44px}
.header .nav-links a:last-child:nth-child(odd){grid-column:auto}
}

/* Visible quick links and a complete expandable directory. */
.header .nav{grid-template-columns:52px minmax(0,1fr) auto auto;gap:12px}
.header .primary-links{grid-column:2;grid-row:1;display:flex;justify-content:center;align-items:center;gap:14px}
.header .primary-links a{color:#083650;font-weight:700;font-size:.875rem;min-height:44px;display:flex;align-items:center;text-decoration:none;line-height:1.3}
.header .primary-links a:hover,.header .primary-links a:focus-visible{text-decoration:underline;text-underline-offset:5px}
.header .nav-book{grid-column:3;grid-row:1}
.header .menu-button{display:block!important;grid-column:4;grid-row:1;min-height:44px;padding:8px 12px;background:transparent;border:1px solid #9cbfce;border-radius:7px;color:#083650;font-size:.875rem;cursor:pointer;white-space:nowrap}
.header .nav-links.full-menu{display:none!important;grid-column:1/-1;grid-row:2;position:static;width:100%;background:transparent;box-shadow:none;padding:16px 0;border-top:1px solid #b8dce9;margin:0;max-height:65vh;overflow:auto}
.header .nav-links.full-menu.open{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.menu-group h2{font-size:1rem;margin:0 0 6px;color:#083650;line-height:1.4}
.header .full-menu .menu-group a{display:flex;justify-content:flex-start;text-align:left;white-space:normal;min-height:44px;padding:8px 0;font-weight:600;font-size:.9375rem}
@media(max-width:1100px){
.header .nav{grid-template-columns:48px minmax(0,1fr) auto;gap:4px 12px}
.header .nav-book{grid-column:2;grid-row:1;justify-self:end}
.header .menu-button{grid-column:3;grid-row:1}
.header .primary-links{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 10px;border-top:1px solid #b8dce9;padding-top:4px}
.header .primary-links a{justify-content:center;text-align:center;padding:6px 0}
.header .nav-links.full-menu{grid-row:3}
}
@media(max-width:680px){
.header{position:static}
.header .primary-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.header .nav-links.full-menu.open{grid-template-columns:1fr;gap:18px;max-height:none}
}
.home-social-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.home-social-invite{padding:24px;background:#e3f5fc;border-radius:22px}
.home-social-invite img{display:block;width:100%;height:auto;max-height:290px;object-fit:cover;border-radius:14px;margin-bottom:22px}
.home-social-invite h3{font-size:1.5rem;line-height:1.25}
.home-social .instagram-live{width:100%;margin:0;min-width:0}
@media(max-width:760px){.home-social-grid{grid-template-columns:1fr;gap:24px}.home-social-invite{padding:20px}.home-social-invite h3{font-size:1.375rem}}

/* Balanced footer navigation with contact information in one place. */
.footer{padding:32px 0 18px;border-top:3px solid #b8dce9;background:#f2f9fc;margin-top:28px}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.footer-grid>.footer-studio{grid-column:auto}
.footer .footer-logo{width:92px}
.footer-studio{min-width:0}
.footer .footer-contact p{font-size:.9375rem;line-height:1.6;margin:12px 0}
.footer .footer-contact a{font-size:.9375rem;margin:0;min-height:44px;padding:9px 0;overflow-wrap:anywhere}
.footer .footer-social{display:flex;gap:24px;margin-top:2px}
.footer .footer-social a{display:inline-flex;align-items:center}
.footer .footer-links h3{font-size:1rem;line-height:1.4;margin:0 0 10px}
.footer .footer-links a{display:flex;align-items:center;min-height:48px;margin:0;padding:8px 0;font-size:.9375rem;line-height:1.4;overflow-wrap:anywhere}
.footer-bottom{margin-top:24px;padding-top:16px;font-size:.875rem;line-height:1.5}
@media(max-width:900px){
.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
.footer-grid>.footer-studio{grid-column:1/-1;display:grid;grid-template-columns:92px minmax(0,1fr);gap:20px;padding-bottom:20px;border-bottom:1px solid #d3e7f0}
.footer .footer-contact p:first-child{margin-top:0}
.footer-bottom{display:flex;flex-wrap:wrap;gap:8px 20px}
.footer-bottom span{margin:0}
}
@media(max-width:480px){
.footer-grid>.footer-studio{grid-template-columns:1fr;gap:14px}
.footer .footer-logo{width:80px}
.footer .footer-contact p{margin:8px 0}
.footer .footer-links a{min-height:52px;font-size:.875rem}
.footer .footer-links h3{font-size:1rem}
.footer-bottom{display:block}
.footer-bottom span{display:block;margin-bottom:6px}
}

/* Walk-in creativity is the first-visit focal point. */
.page-home .walkin-welcome{background:#fff;border-left:6px solid #bc1872;border-radius:14px;padding:22px 24px;margin:22px 0 24px;max-width:550px;box-shadow:0 5px 18px #08365012}
.page-home .hero .walkin-title{font-family:'Trebuchet MS',Arial,sans-serif;font-size:clamp(1.65rem,2.6vw,2rem);font-weight:800;line-height:1.2;letter-spacing:-.025em;color:#083650;margin:0 0 12px}
.page-home .hero .walkin-welcome p{margin-bottom:12px}.page-home .hero .walkin-welcome .walkin-easy{font-weight:800;color:#a01461;margin-bottom:0;font-size:1.05rem}
@media(max-width:680px){.page-home .walkin-welcome{padding:20px;margin-block:18px}}

.local-offer{list-style:none;padding:0;margin:16px 0 0;line-height:1.6}.local-offer li{padding:6px 0;border-top:1px solid #36282026;font-size:1rem}

.local-partner-note{max-width:820px;margin-inline:auto;border-left:4px solid var(--blue);padding:16px 22px;background:#f5fbfe;border-radius:0 12px 12px 0}.local-partner-note h3{font-size:1.2rem;margin-bottom:8px}.local-partner-note p{font-size:.9375rem;line-height:1.6;margin:0}

.signup-form-wrap{flex:1;max-width:490px;min-width:0}.square-signup label{display:block;margin-bottom:8px;font-size:1rem}.signup-fields{display:flex;align-items:stretch;gap:10px}.signup-fields input[type=email]{min-width:0;flex:1;width:100%;min-height:50px;border:1px solid #083650;border-radius:12px;padding:12px 14px;background:white;color:#083650;font-size:1rem}.signup-fields .button{white-space:nowrap}.square-signup .signup-note{font-size:.875rem;text-align:left;margin-top:10px;line-height:1.5}@media(max-width:680px){.signup-form-wrap{max-width:none;margin-top:20px}.signup-fields{flex-direction:column}.signup-band .signup-fields .button{margin-top:0}}

.studio-welcome-photos{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:30px}.studio-welcome-photos figure{margin:0;border-radius:16px;overflow:hidden;background:var(--blue)}.studio-welcome-photos figure:nth-child(2){background:var(--yellow)}.studio-welcome-photos img{width:100%;height:350px;object-fit:contain;background:#fff}.studio-welcome-photos figcaption{padding:14px 20px;font-weight:700;color:#083650}@media(max-width:680px){.studio-welcome-photos{grid-template-columns:1fr;gap:18px}.studio-welcome-photos img{height:310px}}

.studio-welcome-photos.single-sign{grid-template-columns:1fr;max-width:520px;margin-inline:auto}.studio-welcome-photos.single-sign img{height:390px}@media(max-width:680px){.studio-welcome-photos.single-sign img{height:330px}}

.page-home .hero .studio-name{font-family:'TPP Fredoka','Trebuchet MS',sans-serif;font-size:clamp(2rem,3.6vw,3rem);line-height:1.12;letter-spacing:-.025em;color:#083650;font-weight:700;margin:0 0 12px;max-width:none}.header .primary-links a[aria-current=page]{color:#a01461;text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}@media(max-width:1100px){.header .primary-links{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:600px){.header .primary-links{grid-template-columns:repeat(2,minmax(0,1fr))}.header .primary-links a:first-child{grid-column:1/-1}}

/* Show the real studio clearly in the first view. */
.page-home .studio-hero-photo{margin:0;max-width:430px;background:var(--yellow-light);padding:10px;border-radius:24px;overflow:hidden}.page-home .studio-hero-photo>img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:16px}.studio-photo-caption{padding:15px 12px 8px;color:#083650;line-height:1.4}.studio-photo-caption strong{display:block;font-family:Fredoka,Arial,sans-serif;font-size:1.5rem;margin-bottom:3px}.studio-photo-caption span{display:block;font-size:.9375rem}@media(max-width:680px){.page-home .studio-hero-photo{max-width:360px}.page-home .studio-hero-photo>img{height:auto;aspect-ratio:3/4}.studio-photo-caption{padding:12px 8px 5px}}

/* Give the established studio brand a prominent place in the header. */
.header .nav{grid-template-columns:104px minmax(0,1fr) auto auto;min-height:120px;padding-block:8px}.header .brand-logo{width:104px;height:auto;border-radius:8px}.header .primary-links{gap:12px}@media(max-width:1100px){.header .nav{grid-template-columns:88px minmax(0,1fr) auto;min-height:104px}.header .brand-logo{width:88px}}@media(max-width:380px){.header .nav{grid-template-columns:78px minmax(0,1fr) auto;gap:4px 8px}.header .brand-logo{width:78px}.header .menu-button{padding-inline:8px}}

@media(max-width:1100px){.header .primary-links{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.header .primary-links{grid-template-columns:repeat(2,minmax(0,1fr))}.header .primary-links a:first-child{grid-column:auto}}

/* A personal welcome first, followed by a look inside the studio. */
.page-home .welcoming-hero-photo{margin:0;padding:10px;background:var(--yellow-light);max-width:430px;border-radius:24px}.page-home .welcoming-hero-photo>img{width:100%;height:420px;object-fit:cover;object-position:center 45%;border-radius:16px}.studio-first-look{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;margin-bottom:30px}.studio-first-look>img{width:100%;height:370px;object-fit:cover;object-position:center 55%;border:10px solid var(--blue);border-radius:24px}.studio-first-look .section-intro{margin:0}
@media(max-width:680px){.page-home .hero{padding-block:20px}.page-home .hero-grid{display:flex;flex-direction:column;gap:16px}.home-hero-copy{display:contents}.home-hero-copy .studio-name{order:1;margin:0;text-align:center;font-size:1.8rem}.home-hero-copy>.eyebrow{order:2;margin:0;text-align:center;font-size:.7rem;letter-spacing:.08em}.page-home .welcoming-hero-photo{order:3;width:100%;max-width:430px;align-self:center}.page-home .welcoming-hero-photo>img{height:300px;object-position:center 40%}.home-hero-copy>h1{order:4;margin:4px 0 0;font-size:2.6rem}.home-hero-copy>.walkin-welcome{order:5;margin:0}.home-hero-copy>.hero-text-links{order:6;margin:0}.studio-first-look{grid-template-columns:1fr;gap:22px}.studio-first-look>img{height:330px}.studio-photo-caption{padding:10px 8px 4px}.studio-photo-caption strong{font-size:1.3rem}}
