/* Booking story, crossfades, and readable comparison presentation. */
.flipbook-image{perspective:none}.flipbook-image img{transform:none!important;filter:none!important;backface-visibility:visible;transform-origin:center}
.flipbook-caption,.flipbook-top{font-size:13px}.flipbook-caption>span:last-child{font-size:12px}
.widget-presentation{z-index:6;pointer-events:none;padding:9%;display:flex;align-items:center}.widget-presentation h3{font-size:clamp(38px,4.5vw,74px);line-height:1.08}.widget-presentation [data-reveal-word]{display:inline-block;will-change:opacity,transform}
.dynamic-widget.booking-widget.calendar-demo{top:50%;left:8%;right:8%;bottom:auto;padding:23px 28px;background:var(--cream);color:#192c23;border:1px solid #dce3d9;border-radius:16px;transform:translateY(calc(-50% + var(--preview-y))) scale(var(--demo-scale,1));box-shadow:0 25px 80px #0007;pointer-events:none}
.calendar-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center;padding-bottom:15px;border-bottom:1px solid #dce1d8}.calendar-heading>span{font-size:clamp(16px,1.8vw,25px);font-weight:600;letter-spacing:-.04em}.calendar-heading small{font:10px/1.4 monospace;color:#647366}
.calendar-story{position:relative;height:360px;overflow:hidden;margin-top:16px}.demo-calendar,.demo-times,.demo-confirmation{position:absolute;inset:0;transform-origin:center;will-change:opacity,transform}.calendar-month{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:8px}.calendar-demo .calendar-month h3{font-size:24px;line-height:1.15;letter-spacing:-.04em;margin:0;display:block}.calendar-month>span{font-size:12px;color:#627061}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center}.calendar-week{font-size:12px;color:#627061;margin-bottom:8px}.calendar-day{position:relative;display:grid;place-items:center;height:43px;border:1px solid transparent;border-radius:7px;font-size:15px;font-weight:500}.calendar-day i{position:absolute;bottom:5px;width:4px;height:4px;border-radius:50%;background:currentColor}.calendar-day.full{color:#9d4c48;background:#f5e4e0}.calendar-day.limited{color:#906716;background:#f6edca}.calendar-day.open{color:#3d7056;background:#e5eee1}.calendar-day.selected{box-shadow:0 0 0 2px #273e31;z-index:1}.calendar-legend{display:flex;gap:20px;font-size:12px;margin-top:14px;color:#586756}.calendar-legend span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}.calendar-legend .full{background:#c7776a}.calendar-legend .limited{background:#d5aa43}.calendar-legend .open{background:#6f9a69}
.demo-times{opacity:0;padding:12px 5%;box-sizing:border-box}.demo-step{font:11px monospace;letter-spacing:.08em;color:#60725e}.calendar-demo .demo-times h3{display:block;font-size:28px;line-height:1.1;margin:10px 0 7px}.demo-times>p{font-size:13px;color:#61705e;margin:0 0 20px}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.time-slot{padding:13px;border:1px solid #b8c6b2;border-radius:7px;font-size:17px;background:var(--cream)}.time-slot small{display:block;font-size:11px;margin-top:5px;color:#66785d}.time-slot.unavailable{opacity:.5;background:var(--cream);text-decoration:line-through}.time-slot.selected{background:#dce9d2;border:2px solid #3e6247;padding:12px;box-shadow:0 0 0 3px #3e624714}.demo-booking-summary{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin:22px 0 13px}.demo-booking-summary b{font-weight:500}.demo-book-button{display:flex;justify-content:space-between;padding:15px 18px;background:#244f38;color:var(--cream);font-size:15px;border-radius:6px}.demo-book-button.pressed{background:#172e22;transform:scale(.985)}
.demo-confirmation{opacity:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.confirmation-check{width:58px;height:58px;border-radius:50%;background:#e1edd9;color:#3a6845;display:grid;place-items:center;font-size:31px;margin-bottom:20px}.calendar-demo .demo-confirmation h3{display:block;font-size:42px;margin:15px 0 12px;letter-spacing:-.06em}.demo-confirmation p{font-size:16px;line-height:1.65;margin:0}.demo-confirmation>div{font-size:12px;color:#586e50;margin-top:22px}.demo-confirmation>small{font-size:11px;margin-top:15px;color:#798173}.demo-cursor{position:absolute;width:27px;height:34px;z-index:8;filter:drop-shadow(0 2px 2px #0003);pointer-events:none}.cursor-click{position:absolute;width:32px;height:32px;border:2px solid #355d3c;border-radius:50%;z-index:7;pointer-events:none}.calendar-story-caption{font-size:13px;line-height:1.5;margin:12px 0 0;border-top:1px solid #dce1d8;padding-top:12px;min-height:20px;color:#53694d}
.web-comparison-title{font-size:clamp(32px,4vw,62px);font-weight:500;letter-spacing:-.05em;margin:24px 0 12px}.web-comparison-description{font-size:16px;line-height:1.5;margin:0 0 26px;color:#53634f}.web-hero-meta{font-size:12px}.hero-compare{height:clamp(620px,76vh,850px);border:0;background:#0b0c0b}.hero-compare:focus-within{outline:0}.hero-compare:has(input:focus-visible) .hero-divider>span{outline:3px solid var(--cream);outline-offset:4px}.hero-after{background:#0b0c0b;color:var(--cream)}.hero-after>img{filter:brightness(.45)}.demo-nav>b{font-size:30px;letter-spacing:-.08em}.demo-nav>span{font-size:12px}.demo-modern-copy h2{font-size:clamp(48px,6.2vw,100px);line-height:.97;letter-spacing:-.065em;font-weight:500;margin:20px 0}.demo-modern-copy>span:first-child{font-size:13px}.demo-modern-copy p{font-size:17px}.demo-book{font-size:15px;padding:14px 20px}.demo-availability{background:var(--cream);color:#263b2b;font-size:11px}.demo-availability b{font-size:14px}.hero-tag{font-size:12px;top:108px}.hero-demo-note{font:14px/1.6 Inter,Arial,sans-serif;color:#596654;padding:10px 0 30px}.boring-nav span{font-size:13px}.boring-body p,.boring-body>span{font-size:15px}.boring-body img{height:210px}.web-project-image{aspect-ratio:16/9}.web-project-image img{height:100%;width:100%;object-fit:contain;object-position:top;background:var(--cream)}.web-project-info>span,.web-project-info>p{font-size:14px}.web-project-info>b{font-size:15px}.web-projects-heading>p{font-size:16px}
.demo-note,.client-project-note,.ads-note{font-size:14px;line-height:1.6}.work-scroll-footer{font-size:12px}.kit-location.kit-bts{height:auto;aspect-ratio:16/9;background:#111;overflow:hidden;position:relative}.kit-bts>video{display:block;width:100%;height:100%;object-fit:contain}.kit-bts figcaption{font-size:13px;bottom:24px}.kit-bts>button{position:absolute;bottom:20px;right:24px;padding:12px 15px;border:1px solid #fff6;background:#111a;color:var(--cream);font-size:13px;cursor:pointer}#feature-film{cursor:pointer}#feature-film:focus-visible{outline:3px solid var(--cream);outline-offset:-5px}.film-controls{z-index:4}.film-controls input{touch-action:none}.film-controls output{font-size:13px}
@media(max-width:760px){.flipbook-top,.flipbook-caption{font-size:11px}.flipbook-caption>span:last-child{font-size:10px}.flipbook-caption>span:first-child{max-width:70%}.code-scene{top:33%;bottom:55px}.widget-presentation{padding:8%}.widget-presentation h3{font-size:clamp(30px,7vw,48px)}.dynamic-widget.booking-widget.calendar-demo{left:5%;right:5%;padding:13px 14px;top:50%}.calendar-heading{padding-bottom:9px;gap:3px}.calendar-heading>span{font-size:17px}.calendar-heading small{font-size:9px}.calendar-story{height:270px;margin-top:10px}.calendar-demo .calendar-month h3{font-size:20px}.calendar-month{margin-bottom:8px}.calendar-month>span{font-size:10px}.calendar-week,.calendar-grid{gap:4px}.calendar-week{font-size:10px;margin-bottom:5px}.calendar-day{height:31px;font-size:12px;border-radius:5px}.calendar-day i{bottom:3px;width:3px;height:3px}.calendar-legend{font-size:11px;gap:12px;margin-top:9px}.calendar-story-caption{font-size:11px;line-height:1.35;margin-top:6px;padding-top:8px;min-height:15px}.demo-times{padding:5px 2%}.demo-step{font-size:10px}.calendar-demo .demo-times h3{font-size:23px;margin:9px 0 5px}.demo-times>p{font-size:12px;margin-bottom:10px}.time-grid{gap:6px}.time-slot{padding:9px;font-size:15px}.time-slot.selected{padding:8px}.time-slot small{font-size:10px;margin-top:3px}.demo-booking-summary{font-size:11px;margin:12px 0 9px}.demo-book-button{padding:12px;font-size:13px}.confirmation-check{width:45px;height:45px;font-size:26px;margin-bottom:12px}.calendar-demo .demo-confirmation h3{font-size:33px}.demo-confirmation p{font-size:14px}.demo-confirmation>div{font-size:11px;margin-top:12px}.demo-cursor{width:23px;height:29px}.web-copy p{font-size:13px}.chapter-cta{font-size:12px}.web-hero-meta{font-size:10px}.web-comparison-title{font-size:34px}.web-comparison-description{font-size:14px}.hero-compare{height:570px}.demo-nav>span{font-size:9px;max-width:135px;line-height:1.5;text-align:right}.demo-nav>b{font-size:28px}.demo-modern-copy{top:30%}.demo-modern-copy h2{font-size:clamp(33px,8vw,55px)}.demo-modern-copy>span:first-child{font-size:11px}.demo-modern-copy p{font-size:14px}.demo-book{font-size:13px}.demo-availability{font-size:10px;bottom:23px}.demo-availability b{font-size:12px}.hero-tag{font-size:10px;top:100px}.hero-demo-note{font-size:14px}.boring-nav span{font-size:10px}.boring-body h2{font-size:25px}.boring-body p,.boring-body>span{font-size:13px}.boring-body img{height:150px}.kit-bts figcaption{font-size:10px;bottom:14px;left:14px;max-width:45%;line-height:1.5}.kit-bts>button{font-size:11px;padding:8px;right:12px;bottom:12px}.work-scroll-footer{font-size:11px}.film-controls output{font-size:11px}}
@media(max-height:700px) and (max-width:760px){.code-scene{top:35%;bottom:44px}.calendar-story{height:226px}.calendar-heading>span{font-size:15px}.calendar-heading small{display:none}.calendar-day{height:25px}.calendar-story-caption{font-size:10px}.calendar-demo .calendar-month h3{font-size:17px}.calendar-demo .demo-times h3{font-size:20px}.time-slot{padding:6px}.time-slot.selected{padding:5px}.time-slot small{font-size:9px}.demo-times>p{margin-bottom:8px}.demo-booking-summary{margin:8px 0;font-size:10px}.demo-book-button{padding:10px}.calendar-legend{font-size:10px}.web-copy p{font-size:11px}.chapter-cta{font-size:11px}}
@media(prefers-reduced-motion:reduce){.widget-presentation{display:none}.dynamic-widget.booking-widget.calendar-demo{opacity:1!important;transform:translateY(-50%)!important}.demo-cursor,.cursor-click{display:none}.website-panel{min-height:800px}.calendar-demo .demo-calendar{opacity:1!important;transform:none!important}.demo-times,.demo-confirmation{display:none}}
.hero-compare .demo-modern-copy{left:7%;right:7%;top:27%}.hero-compare .demo-modern-copy h2{font-size:clamp(48px,6.2vw,92px)}.hero-compare .boring-body{width:70%;margin:40px auto;padding:28px 22px}.hero-compare .demo-nav>b{font-family:Inter,Arial,sans-serif}
@media(max-width:760px){.hero-compare .demo-modern-copy{left:8%;right:8%;top:29%}.hero-compare .demo-modern-copy h2{font-size:clamp(32px,8vw,53px)}.hero-compare .boring-body{width:83%;margin:45px auto;padding:25px 15px}.hero-compare .boring-body h2{font-size:25px}.hero-compare .boring-body p,.hero-compare .boring-body>span{font-size:13px}}
.hero-divider>span{top:50%}
@media(max-width:760px){.web-copy p{max-width:47%;font-size:12px;line-height:1.35}.chapter-cta{left:51%;width:49%;font-size:12px}.web-copy .chapter-index{font-size:10px}}

.film-loading{position:absolute;inset:0;display:grid;place-items:center;color:#ddd;font-size:14px;pointer-events:none}
