@font-face{font-family:JejuMyeongjo;src:url('/assets/fonts/JejuMyeongjo.woff2') format('woff2');font-display:swap}
:root{--purple:#5c08a3;--cream:#f7f2f2;--yellow:#fee500;--max:1140px;--serif:JejuMyeongjo,'Apple SD Gothic Neo',serif;--sans:Pretendard,'Apple SD Gothic Neo','Malgun Gothic',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-width:none}
html::-webkit-scrollbar{display:none}
body{margin:0;background:var(--purple);color:var(--cream);font-family:var(--serif);font-size:18px;line-height:1.7;overflow-x:hidden}
body:has(.lightbox[open]){overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
img{max-width:100%;display:block}
ul{padding-left:1.3em}
.skip-link{position:absolute;left:8px;top:-80px;background:#fff;color:#222;z-index:20;padding:8px 14px}
.skip-link:focus{top:8px}
.site-header{height:64px;position:absolute;z-index:10;top:0;left:0;right:0;color:#fff;font-family:var(--sans);font-size:13px;font-weight:600}
.is-subpage .site-header{position:relative}
.header-inner{width:min(var(--max),calc(100% - 36px));height:64px;margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;flex:none}
.brand img{width:63px;height:auto}
.desktop-nav{margin:auto}
.desktop-nav>ul{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}
.nav-item{position:relative;white-space:nowrap}
.nav-item>a{display:block;padding:20px 0;transition:opacity .2s}
.nav-item>a:hover,.nav-item>a:focus-visible{opacity:.72}
.nav-item.active>a{text-decoration:underline;text-decoration-color:#71d5c7;text-decoration-thickness:2px;text-underline-offset:8px}
.submenu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:190px;list-style:none;margin:0;padding:10px 0;background:#fff;color:#222;box-shadow:0 12px 32px #1805262e;border-radius:2px;text-align:center;font-weight:400}
.submenu a{display:block;padding:9px 13px;white-space:nowrap}
.submenu a:hover,.submenu a:focus-visible{background:#f3eafa;color:var(--purple)}
.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{display:block}
.mobile-nav{display:none}
.mobile-subnav{display:none}

.home-page{text-align:center}
.home-hero{padding:131px 18px 0}
.hero-mark{width:110px;height:44px;object-fit:contain;margin:0 auto}
.home-hero h1,.buam-hero h2{font-size:72px;line-height:1.24;font-weight:400;letter-spacing:-.035em;margin:22px auto 0;max-width:1160px}
.hero-intro,.buam-hero>p{font-size:29px;line-height:1.5;letter-spacing:-.03em;margin:27px auto 0}
.hero-photo{width:641px;height:855px;object-fit:cover;margin:58px auto 0}
.home-gallery{width:100vw;margin:40px 0 0 -18px;overflow:hidden}
.home-gallery-track{display:flex;width:max-content;animation:home-gallery-slide 45s linear infinite}
.home-gallery:hover .home-gallery-track,.home-gallery:focus-within .home-gallery-track{animation-play-state:paused}
.home-gallery a{display:block;width:204px;height:365px;flex:0 0 204px;overflow:hidden}
.home-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.home-gallery a:hover img{transform:scale(1.025)}
@keyframes home-gallery-slide{to{transform:translateX(calc(-9 * 204px))}}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 31px;border:1px solid currentColor;border-radius:3px;text-align:center;font-family:var(--sans);font-size:15px;line-height:1.4;font-weight:600;transition:background .2s,color .2s,transform .2s}
.button:hover{transform:translateY(-2px)}
.button-outline{margin:29px auto 0;border-color:var(--cream)}
.button-outline:hover{background:var(--cream);color:var(--purple)}
.button-yellow{background:var(--yellow);border-color:var(--yellow);color:#231314}
.hero-contact{max-width:1080px;margin:52px auto 0;display:flex;align-items:flex-start;gap:34px;text-align:left}
.hero-contact>a{flex:0 0 98px}
.hero-contact img{width:98px;height:98px;border-radius:22px}
.hero-contact h2{font-size:29px;font-weight:400;margin:0 0 7px}
.hero-contact p{font-size:19px;line-height:1.7;margin:0}
.scroll-cue{display:flex;flex-direction:column;align-items:center;gap:3px;width:max-content;margin:91px auto 0;font-size:30px;line-height:1}
.scroll-cue span{font-size:18px}
.buam-hero{padding:29px 15px 0;text-align:center}
.buam-hero h2{margin-top:22px}
.buam-hero .button{margin-top:27px}
.buam-photo{width:min(var(--max),100%);height:855px;object-fit:cover;margin:120px auto 0}
.buam-story{padding:167px 15px 0;text-align:center}
.story-copy{max-width:920px;margin:auto}
.story-copy h2{font-size:48px;font-weight:400;line-height:1.3;margin:0 0 32px}
.story-copy p{font-size:22px;line-height:1.7;margin:10px 0}
.story-photos{max-width:var(--max);margin:55px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:39px}
.story-photos img{width:100%;height:413px;object-fit:cover}
.reasons{padding:40px 15px 52px}
.reasons-mark{width:110px;height:44px;object-fit:contain;margin:0 auto 91px}
.reasons-layout{max-width:var(--max);display:grid;grid-template-columns:410px minmax(0,1fr);gap:170px;margin:auto;text-align:left;align-items:start}
.reasons-layout>img{width:410px;height:308px;object-fit:cover}
.reasons-list .eyebrow{font-size:19px;margin:0 0 27px}
.reasons-list{padding-top:17px}
.reasons-list h2{font-size:48px;font-weight:400;line-height:1.38;margin:0 0 90px}
.reasons-list article{margin-bottom:82px}
.reasons-list article>span{display:block;font-family:var(--sans);font-size:16px;font-weight:600;letter-spacing:.05em}
.reasons-list h3{font-size:29px;font-weight:400;line-height:1.4;margin:12px 0 22px}
.reasons-list article p{font-size:18px;line-height:1.85;margin:0 0 15px}
.home-blog{max-width:900px;margin:30px auto 0;padding:70px 20px 100px;border-top:1px solid #ffffff57}
.home-blog-kicker{font:700 13px var(--sans);letter-spacing:.14em;color:var(--yellow);margin:0 0 18px}
.home-blog h2{font-size:clamp(32px,5vw,48px);font-weight:400;line-height:1.3;margin:0 0 12px}
.home-blog>p:not(.home-blog-kicker){font-size:clamp(16px,2vw,19px);margin:0 0 30px}
.home-blog-posts{display:grid;gap:14px}
.home-blog-feature{display:flex;align-items:center;gap:20px;text-align:left;background:#fff;color:#281342;border-radius:18px;padding:25px 29px;transition:transform .2s,box-shadow .2s}
.home-blog-feature:hover{transform:translateY(-3px);box-shadow:0 16px 30px #16032642}
.home-blog-feature span:first-child{color:var(--purple);font:700 13px var(--sans);white-space:nowrap}
.home-blog-feature strong{flex:1;font-size:clamp(17px,2.1vw,22px);font-weight:700;line-height:1.5}
.home-blog-feature span:last-child{font:700 26px var(--sans)}
.home-blog>.button{margin-top:28px}
@media(max-width:640px){.home-blog-feature{display:block}.home-blog-feature strong{display:block;margin:10px 0}.home-blog-feature span:last-child{display:block;text-align:right}}

/* Direct links to the four Haeundae Naver booking products */
.booking-eyebrow{font:700 13px/1.5 var(--sans);letter-spacing:.09em;color:var(--yellow);margin:0 0 12px}
.booking-wrap{width:min(1040px,calc(100% - 40px));margin:auto}
.booking-home{width:min(1040px,100%);margin:44px auto 0;text-align:left}
.booking-home h2,.booking-service h2{font-size:clamp(28px,3vw,36px);font-weight:400;line-height:1.35;margin:0 0 8px}
.booking-home>p:not(.booking-eyebrow),.booking-service>p:not(.booking-eyebrow){font:400 16px/1.65 var(--sans);margin:0 0 22px}
.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.booking-card{min-width:0;min-height:174px;display:flex;align-items:stretch;gap:0;overflow:hidden;border:1px solid #e8e1ed;border-radius:18px;background:#fff;color:#23182b;text-align:left;font-family:var(--sans);box-shadow:0 8px 26px #220f3514;transition:transform .2s,box-shadow .2s}
.booking-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px #220f352b}
.booking-card:focus-visible{outline:3px solid #00a862;outline-offset:3px}
.booking-card img{width:142px;height:174px;flex:0 0 142px;object-fit:cover}
.booking-card-body{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:17px 18px 16px}
.booking-card-label{font-size:11px;font-weight:700;color:#007e46;background:#e8f7ef;border-radius:999px;padding:3px 9px;margin-bottom:7px}
.booking-card strong{font-size:17px;line-height:1.35;font-weight:700;word-break:keep-all}
.booking-card-description{font-size:13px;line-height:1.55;color:#58515e;margin:8px 0 10px;word-break:keep-all}
.booking-card-action{font-size:13px;font-weight:700;color:#006bd8;margin-top:auto}
.booking-card-action span{margin-left:4px}
.booking-hero{padding:55px 0 58px}
.booking-hero h1{font-size:clamp(38px,5vw,58px);font-weight:400;line-height:1.25;letter-spacing:-.035em;margin:0 0 16px}
.booking-hero p:last-child{font-size:clamp(17px,2vw,21px);line-height:1.75;max-width:740px;margin:0}
.booking-list-section{background:#f7f4f8;color:#23182b;padding:78px 0 96px}
.booking-list-section .booking-eyebrow{color:var(--purple)}
.booking-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:24px}
.booking-heading h2{font-size:clamp(30px,4vw,44px);font-weight:400;line-height:1.3;margin:0}
.booking-heading>p{font:400 14px/1.5 var(--sans);margin:0 0 5px}
.booking-note{font:400 14px/1.7 var(--sans);color:#5e5764;margin:24px 0 0}
.booking-help{padding:78px 0 95px}
.booking-help h2{font-size:clamp(27px,4vw,40px);font-weight:400;line-height:1.4;margin:0 0 10px}
.booking-help p{font:400 17px/1.7 var(--sans);margin:0 0 24px}
.booking-help-links{display:flex;flex-wrap:wrap;gap:11px}
.booking-help-links a{font:700 14px/1.5 var(--sans);border:1px solid #ffffffa0;border-radius:999px;padding:13px 21px}
.booking-help-links a:hover{background:#fff;color:var(--purple)}
.booking-service{max-width:1040px;margin:0 auto 70px;padding:32px;background:#f7f4f8;color:#23182b;border-radius:22px}
.booking-service .booking-eyebrow{color:var(--purple)}
.booking-service .booking-card{border-color:#e4dfe8}
@media(max-width:800px){.booking-grid{grid-template-columns:1fr}}
@media(max-width:520px){.booking-wrap{width:calc(100% - 30px)}.booking-home{margin-top:32px}.booking-hero{padding:46px 0 50px}.booking-card{min-height:142px}.booking-card img{width:104px;height:142px;flex-basis:104px}.booking-card-body{padding:13px 14px}.booking-card strong{font-size:15px}.booking-card-description{font-size:12px;margin:6px 0 8px}.booking-card-action{font-size:12px}.booking-list-section{padding:58px 0 72px}.booking-heading{display:block}.booking-heading>p{margin-top:8px}.booking-service{padding:18px;margin-bottom:46px}}
@media(max-width:520px){body:has(.booking-grid):not(:has(.booking-page)) .floating-chat{width:48px;font-size:0;gap:0}body:has(.booking-grid):not(:has(.booking-page)) .floating-chat svg{width:22px;height:22px}}

.site-footer{padding:130px 15px 44px;background:var(--purple);color:var(--cream)}
.footer-inner{max-width:var(--max);margin:auto;position:relative}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;font-size:17px}
.footer-grid h2,.footer-grid h3{font-weight:400;line-height:1.4;margin:0}
.footer-grid h2{font-size:22px;margin-bottom:26px}
.footer-grid h3{font-size:19px;margin:20px 0 6px;color:var(--yellow)}
.footer-grid p{margin:0;line-height:1.7}
.footer-grid a:hover{text-decoration:underline}
.footer-copyright{position:absolute;right:0;top:0;margin:0;font-size:18px}
.footer-logo{display:block;width:255px;margin:115px auto 0}
.footer-logo img{width:255px;height:102px;object-fit:contain}
.is-home .footer-logo{margin-top:131px}
.is-home .footer-social,.is-home .footer-bottom{display:none}
.is-home .site-footer{padding-bottom:5px}
.footer-social{display:flex;justify-content:center;gap:0;margin:28px auto 0;font:700 19px var(--sans)}
.footer-social a{display:grid;place-items:center;width:45px;height:29px}
.naver-mark{display:grid;place-items:center;width:18px;height:18px;background:#fff;color:var(--purple);font:700 16px/1 var(--sans)}
.footer-bottom{font-family:var(--sans);font-size:12px;opacity:.9;display:flex;flex-direction:column;gap:7px;align-items:center;margin-top:25px;text-align:center}
.footer-bottom div{display:flex;gap:16px}
.font-credit{font-family:var(--sans);font-size:11px;opacity:.65;margin:8px 0 0;text-align:right}
.floating-chat{position:fixed;right:32px;bottom:32px;z-index:15;display:flex;align-items:center;justify-content:center;gap:5px;width:84px;height:48px;background:var(--yellow);color:#231314;border-radius:999px;font-family:var(--sans);font-size:16px;font-weight:700;box-shadow:0 4px 16px #13021c33}
.floating-chat svg{display:block;flex:none}
.floating-chat:hover{filter:brightness(.95)}
body:has(.booking-page) .floating-chat{display:none}

/* Shared layouts for the original numbered pages */
.subpage{min-height:450px}
.subpage>section:not(.event-hero){max-width:var(--max);margin-inline:auto}
.subpage h1,.subpage h2,.subpage h3,.subpage h4{font-weight:400;line-height:1.4}
.event-overview-inner{display:flex;justify-content:center;gap:44px;padding:130px 20px 170px}
.event-overview-link{font-size:28px;border-bottom:2px solid #ffffffa0;padding:14px 20px}
.event-overview-link:hover{color:var(--yellow)}
.event-hero{height:500px;background-position:center;background-size:cover;display:grid;place-items:center;text-align:center;padding:30px}
.event-hero-copy{text-shadow:0 2px 12px #0008}
.event-hero h1{font-size:clamp(38px,5vw,70px);margin:0}
.event-hero p{font-size:clamp(22px,3vw,37px);margin:8px 0}
.trial-details{padding:80px 20px 140px;text-align:center}
.trial-promo-image{display:block;max-width:640px;margin:auto}
.trial-promo-image img{width:100%;height:auto}
.trial-book{margin:42px auto;background:#fff;color:var(--purple);border-color:#fff;border-radius:999px}
.trial-description{max-width:900px;margin:auto;text-align:left;font-size:21px}
.trial-description h2{font-size:34px;margin-top:45px}
.trial-description li{padding:4px 0}
.blog-event-inner{padding:105px 20px 150px;text-align:center}
.blog-event-link{display:inline-block}
.blog-event-image{max-width:900px;width:100%;margin:auto}
.overview-inner{padding:16px 0 80px;text-align:center}
.overview-inner h1{font-size:40px;margin:0 0 90px;text-align:left}
.overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.overview-card{display:block;text-align:center}
.overview-card img{width:auto;height:345px;max-width:100%;object-fit:contain;margin:auto}
.overview-card .button{height:51px;min-height:51px;background:#fff;color:var(--purple);border-color:#e8dfeb;border-radius:999px;font-size:18px;margin-top:40px;padding:10px 21px}
.overview-card .button::before{content:'✧';font-size:22px;font-weight:400;margin-right:10px;line-height:1}
.overview-card:hover img{filter:brightness(.9)}
.service-inner,.pricing-inner,.directions-inner,.gallery-inner{padding:85px 20px 150px}
.service-heading{text-align:center;margin-bottom:55px}
.service-heading p{margin:0;font-size:20px}
.service-heading h1,.pricing-inner h1,.directions-inner h1,.gallery-inner h1{font-size:48px;margin:8px 0 30px;text-align:center}
.service-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 auto 85px}
.service-gallery a{aspect-ratio:4/3;overflow:hidden;display:block}
.service-gallery img{width:100%;height:100%;object-fit:cover}
.service-copy{max-width:920px;margin:auto;font-size:20px;line-height:1.85}
.service-copy>h2{font-size:35px;margin:0}
.service-copy>h3{font-size:30px;margin:8px 0 22px}
.service-feature{margin:52px 0}
.service-feature h4{font-size:26px;margin:0 0 10px}
.service-feature ul{margin-top:12px}
.service-feature li{margin:8px 0}
.service-closing{font-size:24px;text-align:center;margin-top:65px}
.gallery-video{max-width:850px;margin:0 auto 62px}
.gallery-video iframe{width:100%;aspect-ratio:16/9;border:0}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.photo-grid a{display:block;aspect-ratio:4/3;overflow:hidden}
.photo-grid img{height:100%;width:100%;object-fit:cover}
.pricing-banner{display:block;width:100%;height:320px;object-fit:cover;margin-bottom:55px}
.pricing-subtitle{text-align:center;font-size:25px;line-height:1.7;margin:0 auto 55px}
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.price-card{border:1px solid #ffffff75;padding:34px 22px;min-height:195px;text-align:center;display:flex;flex-direction:column;justify-content:center}
.price-card h2{font-size:25px;margin:0 0 10px}
.price-card p{margin:2px 0}
.price-card .price{font-size:28px;color:var(--yellow)}
.price-note,.price-tax{font-size:16px}
.price-card a{text-decoration:underline;text-underline-offset:3px}
.directions-inner{text-align:center}
.map-panel{max-width:1000px;margin:30px auto}
.map-panel iframe{width:100%;height:400px;border:0}
.directions-address{font-size:25px}
.directions-button{margin:20px auto}
.map-attribution{display:block;font-family:var(--sans);font-size:12px;opacity:.8}
.map-attribution a{text-decoration:underline}
.not-found{max-width:var(--max);margin:100px auto 140px;padding:0 20px;text-align:center}
.not-found h1{font-size:40px;font-weight:400}
.not-found a{text-decoration:underline}
.legal-inner{max-width:900px;margin:80px auto 120px;padding:0 20px}
.legal-inner h1{text-align:center;font-size:44px;margin:0 0 50px}
.legal-content{font-family:var(--sans);font-size:15px;line-height:1.8;white-space:normal;overflow-wrap:anywhere}
.legal-content strong{font-weight:700}

.lightbox{position:fixed;z-index:30;inset:0;width:100vw;height:100vh;border:0;background:#10081deb;color:#fff;padding:20px}
.lightbox::backdrop{background:#10081deb}
.lightbox-inner{height:100%;display:flex;align-items:center;justify-content:center;gap:16px}
.lightbox img{max-width:min(90vw,1400px);max-height:90vh;object-fit:contain}
.lightbox button{border:0;background:#ffffff22;color:white;cursor:pointer;border-radius:99px;width:44px;height:44px;flex:0 0 44px}
.lightbox-close{position:absolute;right:16px;top:15px}

@media(max-width:900px){
  .desktop-nav>ul{gap:17px}
  .reasons-layout{grid-template-columns:33% 1fr;gap:60px}
  .reasons-layout>img{width:100%;height:auto}
  .home-hero h1,.buam-hero h2{font-size:clamp(45px,6vw,72px)}
  .hero-intro,.buam-hero>p{font-size:clamp(22px,2.6vw,29px)}
}
@media(max-width:700px){
  body{font-size:16px}
  .site-header{height:95px;font-size:13px}
  .is-subpage .site-header{height:95px}
  .is-subpage .site-header:has(.mobile-subnav){height:135px}
  .header-inner{height:47px;width:100%;padding:0 20px;justify-content:flex-start}
  .brand img{width:68px;height:27px;object-fit:contain}
  .desktop-nav{display:none}
  .mobile-nav{display:block;width:100%;height:48px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .mobile-nav::-webkit-scrollbar{display:none}
  .mobile-nav>ul{display:flex;gap:39px;align-items:center;height:48px;margin:0;padding:0 31px;list-style:none;width:max-content}
  .mobile-nav .nav-item>a{padding:12px 0}
  .mobile-nav .submenu{display:none}
  .mobile-subnav{display:block;height:40px;overflow:auto hidden;scrollbar-width:none;font-size:12px}
  .mobile-subnav::-webkit-scrollbar{display:none}
  .mobile-subnav ul{display:flex;gap:36px;align-items:center;width:max-content;height:40px;list-style:none;margin:0;padding:0 31px}
  .mobile-subnav a[aria-current=page]{color:var(--yellow)}
  .home-hero{padding:129px 15px 0}
  .hero-mark{width:110px;height:44px}
  .home-hero h1,.buam-hero h2{font-size:36px;line-height:1.3;letter-spacing:-.055em;margin-top:16px}
  .hero-intro,.buam-hero>p{font-size:20px;line-height:1.55;margin-top:25px}
  .hero-photo{width:360px;height:480px;max-width:100%;margin-top:25px}
  .home-gallery{margin:20px 0 0 -15px;width:100vw}
  .home-gallery a{width:140px;height:250px;flex-basis:140px}
  @keyframes home-gallery-slide{to{transform:translateX(calc(-9 * 140px))}}
  .button-outline{margin-top:20px;background:#fff;border-color:#fff;border-radius:999px;color:#222}
  .hero-contact{gap:16px;align-items:flex-start;margin-top:21px}
  .hero-contact>a{flex-basis:75px}
  .hero-contact img{width:75px;height:75px}
  .hero-contact h2{display:inline-block;background:#fff;color:#222;border-radius:999px;padding:4px 20px;font-family:var(--sans);font-size:15px;font-weight:600;white-space:nowrap}
  .hero-contact p{font-size:14px}
  .scroll-cue{margin-top:54px}
  .buam-hero{padding-top:8px}
  .buam-hero .button{margin-top:25px;background:#fff;border-color:#fff;border-radius:999px;color:#222}
  .buam-photo{width:360px;height:270px;margin-top:45px}
  .buam-story{padding:80px 15px 0}
  .story-copy h2{font-size:34px;margin-bottom:23px}
  .story-copy p{font-size:17px}
  .story-photos{display:block;margin-top:31px}
  .story-photos img{height:270px;margin-bottom:20px}
  .reasons{padding-top:0}
  .reasons-mark{margin:0 auto 60px}
  .reasons-layout{display:block}
  .reasons-layout>img{display:none}
  .reasons-list{padding-top:0;width:240px;margin:auto}
  .reasons-list .eyebrow{font-size:16px;line-height:1.4;margin-bottom:29px}
  .reasons-list h2{font-size:30px;letter-spacing:-.04em;margin-bottom:49px}
  .reasons-list article{margin-bottom:48px}
  .reasons-list article:last-child{margin-bottom:0}
  .reasons-list article>span{line-height:1.3}
  .reasons-list h3{font-size:20px;margin-top:23px;margin-bottom:32px}
  .reasons-list article p{font-size:15px;line-height:1.5}
  .reasons{padding-bottom:0}
  .site-footer{padding:95px 15px 35px}
  .is-home .site-footer{padding-top:89px}
  .footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:16px}
  .footer-grid section+section{margin-top:0}
  .footer-grid h2{font-size:19px}
  .footer-grid h3{font-size:17px}
  .footer-copyright{position:static;margin-top:20px;text-align:right;font-size:16px}
  .footer-logo{width:255px;margin-top:90px}
  .is-home .footer-logo{margin-top:90px}
  .footer-bottom{margin-top:22px;text-align:center;font-size:11px}
  .footer-bottom div{justify-content:center}
  .font-credit{text-align:center}
  .floating-chat{bottom:16px;right:16px;font-size:14px}
  .event-overview-inner{display:block;text-align:center;padding:90px 15px 130px}
  .event-overview-link{display:block;font-size:23px;margin:15px auto;max-width:340px}
  .event-hero{height:350px}
  .trial-details{padding:55px 15px 95px}
  .trial-description{font-size:17px}
  .trial-description h2{font-size:26px}
  .overview-inner{padding:29px 15px 14px}
  .service-inner,.pricing-inner,.directions-inner,.gallery-inner{padding:65px 15px 100px}
  .overview-inner h1,.service-heading h1,.pricing-inner h1,.directions-inner h1,.gallery-inner h1{font-size:36px}
  .overview-inner h1{margin-bottom:46px}
  .overview-grid,.price-grid{grid-template-columns:1fr;gap:20px}
  .overview-card .button{margin-top:20px}
  .service-gallery,.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .service-copy{font-size:17px}
  .service-copy>h2{font-size:29px}
  .service-copy>h3{font-size:25px}
  .service-feature h4{font-size:22px}
  .service-closing{font-size:20px}
  .pricing-banner{height:220px}
  .pricing-subtitle,.directions-address{font-size:19px}
  .price-card{min-height:170px}
  .price-card h2{font-size:22px}
  .map-panel iframe{height:320px}
  .legal-inner{margin:60px auto 100px;padding:0 15px}
  .legal-inner h1{font-size:34px}
  .legal-content{font-size:14px}
  .lightbox{padding:8px}
  .lightbox-inner{gap:3px}
  .lightbox button{width:30px;height:30px;flex-basis:30px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.home-gallery-track{animation:none!important}}
