@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{font-family:Manrope,Arial,sans-serif;color:#151515;background:#fff;font-synthesis:none;--accent:#e65239;--muted:#555;--line:#e8e8e8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;min-width:280px;min-height:100vh;display:flex;flex-direction:column;background:#fff}h1,h2,p{margin:0}a{color:inherit}.container{width:min(800px,calc(100% - 40px));margin:0 auto;text-align:center}.brand{width:min(960px,calc(100% - 40px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;min-height:88px}.brand-link{display:flex;align-items:center;gap:7px;font-size:22px;font-weight:800;letter-spacing:-.7px;text-decoration:none;min-height:48px}.logo{position:relative;width:31px;height:32px;overflow:hidden;display:inline-block}.logo img{position:absolute;width:51px;height:64px;max-width:none;left:-8px;top:-17px}.faq-link{min-width:48px;min-height:48px;display:grid;place-items:center;font-size:14px;font-weight:700;text-decoration:none}.faq-link:hover{color:var(--accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e65239;outline-offset:4px}.landing{padding-top:13px}.audience{font-size:15px;font-weight:700;line-height:1.5;margin-bottom:18px}h1{font-size:clamp(36px,5.6vw,60px);line-height:1.09;letter-spacing:-2.2px;font-weight:800}.offer-main{color:var(--accent);font-style:normal}.offer-time{white-space:nowrap}.offer-emoji{font-size:.48em;white-space:nowrap;vertical-align:middle}.video-intro{font-weight:800;font-size:17px;line-height:1.5;margin:23px 0 20px}.video{position:relative;width:100%;aspect-ratio:16/9;background:#d6dce0;overflow:hidden;border-radius:8px}.video iframe,.video-play{position:absolute;inset:0;width:100%;height:100%;border:0}.video-play{padding:0;background:#151515;cursor:pointer;display:block}.video-play>img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.82)}.video-play:hover>img{filter:brightness(.95)}.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:65px;height:48px;border-radius:13px;background:#ef3327;box-shadow:0 2px 12px #0003}.play-icon svg{width:29px;height:29px;fill:white;margin-left:2px}.action{display:flex;justify-content:center;margin:28px 0 37px}.cta{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:56px;padding:17px 30px;border:1px solid #e34f32;border-radius:18px;background:linear-gradient(110deg,#ff3838,#ff8844);color:#fff;font-size:16px;line-height:1.35;font-weight:800;text-decoration:none;position:relative;isolation:isolate;box-shadow:0 6px 20px #f75c3320;transition:transform .18s}.cta:before,.cta:after{content:"";position:absolute;inset:-1px;border:2px solid #ff693f;border-radius:19px;z-index:-1;pointer-events:none;animation:radiate 3s ease-out infinite}.cta:after{animation-delay:1.5s}.cta:hover{transform:translateY(-2px)}@keyframes radiate{0%{opacity:.3;transform:scale(1)}85%,100%{opacity:0;transform:scale(1.1,1.45)}}.faq-section{width:min(100%,720px);margin:0 auto;scroll-margin-top:25px}.faq-section>h2{font-size:21px;line-height:1.3;font-weight:800;letter-spacing:-.3px;margin-bottom:20px}.faqs{display:grid;gap:12px;text-align:left}.faqs details{background:#f3f4f5;border:1px solid #e8eaed;border-radius:7px;overflow:hidden}.faqs summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:60px;padding:18px 22px;font-size:15px;line-height:1.5;font-weight:700}.faqs summary::-webkit-details-marker{display:none}.faqs summary i{position:relative;width:14px;height:14px;flex-shrink:0}.faqs summary i:before,.faqs summary i:after{content:"";position:absolute;top:6px;left:1px;width:12px;height:2px;background:#525252}.faqs summary i:after{transform:rotate(90deg)}.faqs details[open] summary i:after{transform:none}.faqs details[open]{border-color:#efb1a1}.faqs details p{font-size:14px;line-height:1.8;color:var(--muted);padding:0 22px 20px}.last-action{margin:30px 0 33px}footer{margin-top:auto;text-align:center;padding:25px 20px 22px;font-size:11px;color:#666}footer nav{display:flex;align-items:center;justify-content:center;gap:9px}footer a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}footer a:hover{text-decoration:underline}footer small{display:block;font-size:10px;margin-top:1px;color:#919191}.booking{padding-top:8px}.progress{height:24px;width:min(100%,700px);border:1px solid #aeb3b7;position:relative;overflow:hidden;margin:0 auto 22px;background:#f9fafa;text-align:left;border-radius:3px}.progress-fill{position:absolute;left:0;top:0;bottom:0;width:75%;background:#d1d9df}.progress-label{position:relative;padding-left:8px;line-height:22px;font-size:10px;color:#30383e}.booking h1{font-size:17px;font-weight:500;line-height:1.5;letter-spacing:0}.attendance{max-width:710px;margin:25px auto 35px}.policy{font-size:23px;line-height:1.45;letter-spacing:-.5px}.policy strong{font-weight:800}.reschedule{font-size:14px;line-height:1.7;margin-top:18px;font-weight:600}.calendar{background:white;width:100%;min-height:1100px;overflow:hidden;border:1px solid #ececec;border-radius:8px;margin-bottom:30px}.confirmation{padding-top:36px;padding-bottom:60px}.confirmation h1{font-size:36px;line-height:1.3;letter-spacing:-1.2px}.confirmation .video-intro{font-size:17px;font-weight:500;margin:38px 0 29px}.confirmation .video{max-width:760px;margin:0 auto}.legal{text-align:left;padding:25px 0 50px}.legal h1{font-size:34px;letter-spacing:-1px;margin-bottom:28px}.legal h2{font-size:20px;margin:28px 0 12px}.legal p{font-size:15px;line-height:1.8;color:#555}.legal a{text-decoration:underline}
@media(max-width:600px){.container,.brand{width:calc(100% - 36px)}.brand{min-height:76px}.brand-link{font-size:20px;gap:5px}.logo{width:28px;height:29px}.logo img{width:47px;height:59px;left:-7px;top:-16px}.landing{padding-top:6px}.audience{font-size:13px;margin-bottom:16px}h1{font-size:clamp(33px,9.3vw,43px);line-height:1.12;letter-spacing:-1.3px}.offer-emoji{font-size:.5em}.video-intro{font-size:15px;margin:20px 0 17px}.video{border-radius:5px}.play-icon{width:56px;height:42px;border-radius:11px}.play-icon svg{width:25px;height:25px}.action{margin:25px 0 35px}.cta{font-size:14px;min-height:54px;padding:17px 23px;border-radius:17px;max-width:100%}.cta:before,.cta:after{border-radius:18px}.faq-section>h2{font-size:18px;margin-bottom:17px}.faqs{gap:11px}.faqs summary{min-height:56px;padding:15px 16px;font-size:13px}.faqs details p{font-size:13px;padding:0 16px 17px}.last-action{margin:27px 0 20px}footer{padding-top:18px;font-size:10px}footer nav{gap:7px}.booking{padding-top:9px}.progress{height:22px;margin-bottom:18px}.progress-label{line-height:20px;font-size:9px}.booking h1{font-size:15px;line-height:1.5}.attendance{margin:22px auto 30px}.policy{font-size:20px;line-height:1.45;letter-spacing:-.25px}.reschedule{font-size:12px;line-height:1.7;margin-top:20px}.calendar{border:0;border-radius:0;margin-bottom:35px}.confirmation{padding-top:35px;min-height:calc(100svh - 175px);padding-bottom:55px}.confirmation h1{font-size:29px;line-height:1.3;letter-spacing:-.8px}.confirmation .video-intro{font-size:14px;line-height:1.6;margin:38px 0 30px}.legal h1{font-size:29px}.legal p{font-size:14px}}
@media(max-width:350px){h1{font-size:32px}.policy{font-size:18px}.cta{font-size:13px;padding-inline:20px}.faqs summary{font-size:12px}.confirmation h1{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Appointly: restrained, ambient AI styling */
:root{font-family:Inter,Arial,sans-serif;color:#192635;background:#edf2f5;--muted:#506173;--line:#d8e1e8;--display:'Space Grotesk',Inter,sans-serif}
body{position:relative;isolation:isolate;background:#edf2f5}
body:before,body:after{content:"";position:fixed;pointer-events:none}
body:before{inset:0;z-index:-2;background-image:linear-gradient(#476c8d0b 1px,transparent 1px),linear-gradient(90deg,#476c8d0b 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#0008,#0002)}
body:after{inset:-15%;z-index:-1;background:radial-gradient(ellipse 38% 30% at 20% 15%,#7ab6df26,transparent 75%),radial-gradient(ellipse 40% 34% at 87% 43%,#efa48c21,transparent 75%),radial-gradient(ellipse 35% 28% at 30% 90%,#8c9ed118,transparent 75%);animation:ambient-drift 26s ease-in-out infinite alternate;will-change:transform}
@keyframes ambient-drift{from{transform:translate3d(-1%,0,0)}to{transform:translate3d(2%,3%,0)}}
.brand-link,h1,h2,.cta{font-family:var(--display)}
.brand-link{letter-spacing:-1px;font-weight:700}
.faq-link{font-size:13px;letter-spacing:.3px}
.audience{font-size:14px;font-weight:600;letter-spacing:.2px;color:#455b6f}
h1{font-size:clamp(36px,5.4vw,60px);font-weight:700;line-height:1.1;letter-spacing:-2.4px}
.offer-main{color:#d34c34}
.video-intro{font-weight:600;font-size:16px;color:#283d50}
.video{border-radius:12px;box-shadow:0 0 0 1px #b8c8d56b,0 15px 48px #284e6a14;border:5px solid #ffffffb3}
.video-play>img{filter:brightness(.9)}
.cta{font-weight:700;letter-spacing:-.25px;font-size:17px;border-radius:16px}
.cta:before,.cta:after{border-radius:17px}
.faq-section>h2{font-weight:700;letter-spacing:-.5px}
.faqs details{background:#ffffffc7;border-color:#cedae4;border-radius:10px;box-shadow:0 3px 10px #27496b04}
.faqs summary{color:#203448;font-weight:600}
.faqs details[open]{background:#ffffffed;border-color:#d6927f}
.faqs details p{color:#4c6072}
.faqs summary i:before,.faqs summary i:after{background:#6a8296}
footer{color:#536a7f}footer small{color:#698092}
.progress{background:#ffffff96;border-color:#bdcbd8;border-radius:6px}
.progress-fill{background:linear-gradient(90deg,#bdcedd,#e8b3a1)}
.progress-label{color:#30485b;font-weight:500}
.booking h1{font-family:Inter,Arial,sans-serif;color:#415568;font-weight:500}
.policy{font-family:var(--display);font-weight:700;letter-spacing:-.65px}
.policy strong{font-weight:700}
.reschedule{color:#53677a;font-weight:500}
.calendar{border-color:#d1dce5;border-radius:14px;box-shadow:0 15px 50px #23496a0a}
.confirmation h1{font-weight:700;font-size:38px;letter-spacing:-1.5px}
.confirmation .video-intro{color:#53677a}
.call-prep{max-width:760px;margin:42px auto 0;text-align:left;padding:28px 30px;background:#ffffffcf;border:1px solid #cddbe5;border-radius:14px;box-shadow:0 8px 30px #2d4c6606}
.call-prep h2{font-size:24px;line-height:1.3;letter-spacing:-.8px;margin-bottom:22px;font-weight:700}
.call-prep ol{list-style:none;margin:0;padding:0;counter-reset:prep;display:grid;gap:0}
.call-prep li{counter-increment:prep;position:relative;padding:17px 0 17px 43px;border-top:1px solid #e1e8ee}
.call-prep li:before{content:counter(prep,decimal-leading-zero);position:absolute;left:0;top:19px;font:600 11px var(--display);color:#a74935;background:#f9e8e1;border-radius:6px;width:28px;height:25px;display:grid;place-items:center}
.call-prep h3{font-family:var(--display);font-size:16px;font-weight:700;line-height:1.4;margin:0 0 6px;letter-spacing:-.2px}
.call-prep p{font-size:13px;line-height:1.75;color:#506679}
.legal p{color:#4d6174}
@media(max-width:600px){
body:before{background-size:48px 48px}
.audience{font-size:12px;margin-bottom:18px}
h1{font-size:clamp(33px,9.1vw,42px);letter-spacing:-1.65px;line-height:1.12}
.brand-link{font-size:21px}
.video-intro{font-size:14px;font-weight:600}
.video{border-width:3px;border-radius:9px;box-shadow:0 0 0 1px #b8c8d56b,0 10px 30px #284e6a10}
.cta{font-size:15px}
.faq-section>h2{font-size:19px}
.faqs summary{font-size:13px}
.policy{font-size:20px;letter-spacing:-.4px}
.calendar{border:1px solid #d1dce5;border-radius:10px}
.confirmation h1{font-size:30px;letter-spacing:-1px}
.call-prep{padding:23px 20px;margin-top:32px;border-radius:12px}
.call-prep h2{font-size:22px;margin-bottom:15px}
.call-prep li{padding:16px 0 16px 40px}
.call-prep li:before{top:18px}
.call-prep h3{font-size:15px}
.call-prep p{font-size:12px;line-height:1.8}
}
@media(max-width:350px){h1{font-size:30px}.cta{font-size:13px}.confirmation h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Desktop composition */
@keyframes cta-energy{
0%,100%{background-position:0% 50%;box-shadow:inset 0 1px 0 #ffffff66,0 6px 0 #b73925,0 12px 35px #ff673f40}
50%{background-position:100% 50%;box-shadow:inset 0 1px 0 #ffffff66,0 6px 0 #b73925,0 14px 55px #ff673f70}
}
@media(min-width:900px){
:root{background:#142330;color:#eff5fb;--muted:#b9cbdc;--accent:#ff896d}
body{background:#142330}
body:before{background-image:linear-gradient(#89b6d81a 1px,transparent 1px),linear-gradient(90deg,#89b6d81a 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(#000b,#0004)}
body:after{background:radial-gradient(ellipse 43% 35% at 13% 17%,#2676a742,transparent 75%),radial-gradient(ellipse 40% 35% at 90% 50%,#bb68542b,transparent 75%),radial-gradient(ellipse 35% 30% at 40% 95%,#3e58903b,transparent 75%)}
.container{width:min(1080px,calc(100% - 96px))}
.brand{width:min(1160px,calc(100% - 96px));min-height:98px}
.brand-link{font-size:28px;gap:10px}
.logo{width:37px;height:39px}.logo img{width:62px;height:78px;left:-10px;top:-21px}
.faq-link{font-size:17px;color:#c6d7e6}
.landing{padding-top:10px}
.audience{font-size:18px;color:#bfd0df;letter-spacing:.2px;margin-bottom:21px}
h1{font-size:clamp(64px,6vw,82px);letter-spacing:-3px;line-height:1.05;font-weight:700}
.offer-main{color:#ff896d}.offer-emoji{font-size:.39em}
.video-intro{font-size:22px;color:#d3e0ed;margin:28px 0 24px}
.video{max-width:960px;margin-inline:auto;border:5px solid #3f566a;border-radius:16px;box-shadow:0 0 0 1px #78a2c329,0 22px 65px #0005}
.video-play>img{filter:brightness(.95)}
.play-icon{width:84px;height:60px;border-radius:15px}.play-icon svg{width:35px;height:35px}
.action{margin:34px 0 45px}
.cta{width:460px;min-height:80px;max-width:100%;padding:23px 40px;font-size:23px;letter-spacing:-.45px;border-radius:18px;background:linear-gradient(105deg,#e34830,#da5c2b,#e34830);background-size:220% 100%;border:1px solid #ff926d;animation:cta-energy 3.2s ease-in-out infinite;transition:transform .2s,filter .2s}
.cta:before,.cta:after{border-width:2px;border-color:#ff916b;border-radius:20px;animation:radiate 2.7s ease-out infinite}
.cta:after{animation-delay:1.35s}
.cta:hover{transform:translateY(-3px);filter:brightness(1.1)}
.cta:active{transform:translateY(1px)}
.faq-section{width:min(100%,940px)}
.faq-section>h2{font-size:30px;color:#e9f2fa;letter-spacing:-.8px;margin-bottom:25px}
.faqs{gap:15px}
.faqs details{background:#203547d9;border-color:#486279;box-shadow:0 5px 15px #00000012;border-radius:12px}
.faqs details[open]{background:#243c50;border-color:#b77b67}
.faqs summary{font-size:20px;color:#e9f2fa;min-height:78px;padding:23px 27px;font-weight:600}
.faqs summary i{width:18px;height:18px}
.faqs summary i:before,.faqs summary i:after{width:16px;top:8px;background:#a7bfd3}
.faqs details p{font-size:18px;line-height:1.8;color:#c1d2e1;padding:0 27px 25px}
.last-action{margin:37px 0 41px}
footer{font-size:14px;color:#b8cbdc;padding-top:22px;padding-bottom:27px}
footer nav{gap:13px}footer small{font-size:12px;color:#879fb3}
.booking{padding-top:10px}
.progress{height:30px;max-width:840px;background:#263a4b;border-color:#617f98}
.progress-label{font-size:13px;line-height:28px;color:#20394c}
.booking h1{font-size:23px;color:#d6e4ef;line-height:1.5}
.attendance{max-width:930px;margin-top:28px;margin-bottom:35px}
.policy{font-size:31px;line-height:1.4;letter-spacing:-.8px}
.reschedule{font-size:19px;line-height:1.7;color:#bdcede;max-width:850px;margin:22px auto 0}
.calendar{max-width:1040px;margin-inline:auto;border:5px solid #4b6478;border-radius:16px;box-shadow:0 20px 60px #0004}
.confirmation{padding-top:28px;padding-bottom:45px}
.confirmation h1{font-size:52px;line-height:1.2;letter-spacing:-1.9px}
.confirmation .video-intro{font-size:22px;margin:29px 0 28px;color:#c3d5e4}
.confirmation .video{max-width:960px}
.call-prep{max-width:960px;padding:35px 40px;background:#203547eb;border-color:#486279;box-shadow:0 15px 40px #00000018;margin-top:36px}
.call-prep h2{font-size:32px;color:#edf4fb;margin-bottom:22px}
.call-prep li{border-color:#405a70;padding:21px 0 21px 52px}
.call-prep li:before{width:32px;height:29px;top:22px;font-size:13px;background:#f4ad9424;color:#ffb295}
.call-prep h3{font-size:21px;color:#e6f0f9;margin-bottom:8px}
.call-prep p{font-size:17px;color:#bfd0de;line-height:1.8}
.legal{max-width:960px}.legal h1{font-size:46px}.legal h2{font-size:27px}.legal p{font-size:18px;color:#c4d4e2}
}
@media(min-width:900px) and (max-width:1100px){
h1{font-size:66px}.container{width:calc(100% - 80px)}.video-intro{font-size:21px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}


/* Match the current desktop visual system on phones and tablets. */
@media(max-width:899px){
:root{background:#142330;color:#eff5fb;--muted:#b9cbdc;--accent:#ff896d}
body{background:#142330}
body:before{background-image:linear-gradient(#89b6d817 1px,transparent 1px),linear-gradient(90deg,#89b6d817 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(#000a,#0003)}
body:after{background:radial-gradient(ellipse 65% 28% at 5% 12%,#2676a742,transparent 75%),radial-gradient(ellipse 65% 30% at 95% 50%,#bb68542b,transparent 75%),radial-gradient(ellipse 60% 25% at 30% 95%,#3e58903b,transparent 75%)}
.faq-link{color:#c6d7e6}
.audience{color:#bfd0df}
.offer-main{color:#ff896d}
.video-intro{color:#d3e0ed}
.video{border-color:#3f566a;box-shadow:0 0 0 1px #78a2c329,0 12px 35px #0004}
.cta{width:min(100%,420px);min-height:66px;font-size:18px;padding:20px 22px;border-radius:16px;background:linear-gradient(105deg,#e34830,#da5c2b,#e34830);background-size:220% 100%;border-color:#ff926d;animation:cta-energy 3.2s ease-in-out infinite}
.cta:before,.cta:after{border-color:#ff916b;border-radius:18px;animation:radiate 2.7s ease-out infinite}
.cta:after{animation-delay:1.35s}
.action{margin:29px 0 38px}
.faq-section>h2{color:#e9f2fa}
.faqs details{background:#203547eb;border-color:#486279}
.faqs details[open]{background:#243c50;border-color:#b77b67}
.faqs summary{color:#e9f2fa}
.faqs details p{color:#c1d2e1}
.faqs summary i:before,.faqs summary i:after{background:#a7bfd3}
footer{color:#b8cbdc}footer small{color:#879fb3}
.progress{background:#263a4b;border-color:#617f98}
.progress-label{color:#20394c}
.booking h1{color:#d6e4ef}
.reschedule{color:#bdcede}
.calendar{border-color:#4b6478;box-shadow:0 12px 35px #0003}
.confirmation .video-intro{color:#c3d5e4}
.call-prep{background:#203547eb;border-color:#486279}
.call-prep h2{color:#edf4fb}
.call-prep li{border-color:#405a70}
.call-prep li:before{background:#f4ad9424;color:#ffb295}
.call-prep h3{color:#e6f0f9}
.call-prep p{color:#bfd0de}
.legal p{color:#c4d4e2}
}
@media(max-width:600px){
h1{font-size:clamp(34px,10vw,42px);letter-spacing:-1.5px}
.audience{font-size:13px}
.video-intro{font-size:16px}
.cta{font-size:17px;min-height:64px;padding:19px 18px}
.faqs summary{font-size:14px;min-height:60px}
.faqs details p{font-size:14px}
.booking h1{font-size:17px}
.reschedule{font-size:14px}
.confirmation h1{font-size:31px}
.confirmation .video-intro{font-size:16px}
.call-prep h2{font-size:22px;line-height:1.45}
.call-prep h3{font-size:16px}
.call-prep p{font-size:14px;line-height:1.8}
}
@media(max-width:350px){h1{font-size:32px}.cta{font-size:15px}.confirmation h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.calendar-fallback{margin:18px auto;color:#c4d4e2;font:inherit;font-size:15px;line-height:1.6;text-align:center}.calendar-fallback a{display:inline-flex;align-items:center;min-height:44px;padding:0 5px;color:#ffaf95;text-decoration:underline;text-underline-offset:4px}.calendar-fallback a:focus-visible{outline:3px solid #ffaf95;outline-offset:3px}
