:root{--accent: #1f66ac;--accent-dark: #164f88;--accent-light: #2b7fc2;--accent-ring: rgba(31, 102, 172, .24);--bg: #f8fafc;--bg-shade: #edf1f5;--border: rgba(101, 116, 132, .16);--ink: #111b2b;--muted: #566274;--panel: rgba(255, 255, 255, .78);color:var(--ink);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-height:100%}body{min-width:320px;min-height:100%;margin:0;background:linear-gradient(rgba(188,199,213,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(188,199,213,.15) 1px,transparent 1px),radial-gradient(circle at 50% 0%,rgba(31,102,172,.07),transparent 34%),linear-gradient(160deg,#f8fafc00,#edf1f5e6),var(--bg);background-size:42px 42px,42px 42px,auto,auto}#root{min-height:100%}body.modal-open{overflow:hidden}button,a{font:inherit}button{cursor:pointer}.site-header{display:flex;align-items:center;justify-content:center;width:min(1180px,calc(100% - 48px));margin:0 auto;height:70px}.wordmark{display:inline-flex;align-items:center;position:relative;color:var(--ink);font-size:1.02rem;font-weight:800;letter-spacing:0;text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid transparent;border-radius:999px;padding:0 22px;font-size:.95rem;font-weight:760;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.button:hover{transform:translateY(-1px)}.button:focus-visible,.modal-close:focus-visible,.fallback-link:focus-visible{outline:3px solid var(--accent-ring);outline-offset:3px}.button-primary{min-height:48px;background:linear-gradient(180deg,var(--accent-light) 0%,var(--accent) 100%);color:#fff;box-shadow:0 16px 34px #1f66ac38,0 1px 1px #0f172a2e,inset 0 1px #ffffff3d}.button-primary:hover{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-dark) 100%)}h1,h2,p{margin-top:0}h1{max-width:880px;margin:0 auto;color:var(--ink);font-size:clamp(2rem,4.1vw,3.85rem);font-weight:820;letter-spacing:0;line-height:.96;text-wrap:balance}.landing-shell{display:grid;justify-items:center;min-height:calc(100vh - 70px);padding:10px 24px 86px}.landing-content{display:grid;justify-items:center;gap:clamp(18px,2.8vh,28px);width:min(1180px,100%);min-height:calc(100vh - 166px);align-content:center;text-align:center}.video-stage{position:relative;width:min(100%,calc((100vh - 306px) * 16 / 9),1080px);padding:clamp(6px,.8vw,9px);border:1px solid var(--border);border-radius:22px;background:linear-gradient(180deg,var(--panel) 0%,rgba(248,250,248,.62) 100%);box-shadow:0 32px 88px #13203224,0 4px 14px #1320320a,inset 0 1px #fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.video-stage:after{position:absolute;right:12%;bottom:-28px;left:12%;height:30px;border-radius:999px;background:#2a3a4e21;filter:blur(16px);content:"";pointer-events:none}.caption-block{display:grid;justify-items:center;row-gap:0;width:min(980px,100%)}.caption-block p{max-width:none;margin:clamp(14px,1.7vh,20px) auto 0;color:var(--muted);font-size:clamp(1rem,1.5vw,1.1rem);white-space:nowrap}.caption-block .button{margin-top:clamp(18px,2vh,26px)}.video-frame{width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid rgba(15,23,42,.1);border-radius:16px;background:linear-gradient(135deg,#27334638,#0d152414),#0d1524;box-shadow:0 18px 38px #10182721,inset 0 1px #ffffff14}.video-frame video{display:block;width:100%;height:100%;object-fit:contain}.how-section,.faq-section{width:min(1080px,100%);margin-top:clamp(42px,8vh,92px);padding:clamp(42px,6vw,70px);border:1px solid var(--border);border-radius:28px;background:#ffffffad;box-shadow:0 28px 80px #1320321a,inset 0 1px #ffffffeb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.faq-section{margin-top:clamp(28px,5vh,56px)}.section-intro{display:grid;gap:10px;max-width:720px;margin:0 auto clamp(28px,4vw,42px);text-align:center}.section-intro>p{margin:0;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.section-intro h2{margin:0;color:var(--ink);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;letter-spacing:0;line-height:1.02;text-wrap:balance}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.step-card{min-height:250px;padding:24px;border:1px solid rgba(101,116,132,.14);border-radius:18px;background:#ffffffb8;box-shadow:0 16px 34px #1320320f,inset 0 1px #ffffffe6}.step-card span{display:inline-flex;margin-bottom:54px;color:#1f66acb8;font-size:.78rem;font-weight:820;letter-spacing:0}.step-card h3{margin:0 0 12px;color:var(--ink);font-size:1.16rem;line-height:1.2}.step-card p{margin:0;color:var(--muted);font-size:.96rem}.faq-list{display:grid;gap:0;border-top:1px solid rgba(101,116,132,.16)}.faq-item{border-bottom:1px solid rgba(101,116,132,.16)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:clamp(22px,3vw,30px) 0;color:var(--ink);cursor:pointer;font-size:clamp(1.05rem,1.7vw,1.24rem);font-weight:760;line-height:1.24;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border:1px solid rgba(101,116,132,.18);border-radius:999px;color:var(--accent);content:"+";font-size:1.1rem;font-weight:650}.faq-item[open] summary{padding-bottom:14px}.faq-item[open] summary:after{content:"–"}.faq-item p{max-width:760px;margin:0;padding:0 54px clamp(22px,3vw,30px) 0;color:var(--muted);font-size:1rem;line-height:1.62}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:clamp(28px,6vw,90px);width:min(1080px,calc(100% - 48px));margin:clamp(28px,6vh,70px) auto 0;padding:clamp(42px,6vw,72px) 0 clamp(48px,7vw,86px);border-top:1px solid rgba(101,116,132,.16);color:var(--muted)}.site-footer p{margin:0 0 12px;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.site-footer h2{max-width:560px;margin:0;color:var(--ink);font-size:clamp(2rem,4vw,3.35rem);font-weight:820;letter-spacing:0;line-height:1.02}.site-footer span{display:block;max-width:570px;margin-top:16px;font-size:1.02rem;line-height:1.6}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:#0f172a85;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.booking-modal{width:min(900px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid rgba(255,255,255,.28);border-radius:22px;background:#fff;box-shadow:0 34px 110px #0f172a57}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 28px 18px;border-bottom:1px solid rgba(112,126,145,.16)}.modal-header h2{margin-bottom:6px;font-size:clamp(1.45rem,4vw,2rem);line-height:1.15}.modal-header p{margin:0;color:var(--muted)}.modal-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border:1px solid rgba(112,126,145,.18);border-radius:999px;background:var(--bg);color:var(--ink);font-size:1.5rem;line-height:1}.modal-close:hover{background:#f3f6f9}.booking-modal iframe{display:block;height:600px}.fallback-link{display:inline-block;margin:16px 26px 24px;color:var(--accent);font-weight:720}@media(max-width:680px){.site-header{width:min(100% - 28px,1180px);height:58px}.landing-shell{min-height:calc(100vh - 58px);padding:4px 14px 56px}.landing-content{gap:15px;min-height:calc(100vh - 92px)}.video-stage{width:min(100%,calc((100vh - 302px) * 16 / 9));padding:6px;border-radius:18px}.video-frame{border-radius:12px}.caption-block{row-gap:0}h1{max-width:360px;font-size:clamp(1.82rem,9vw,2.5rem);line-height:1}.caption-block p{font-size:.96rem;margin-top:12px;white-space:normal}.caption-block .button{margin-top:18px}.modal-backdrop{align-items:stretch;padding:10px}.booking-modal{width:100%;max-height:calc(100vh - 20px);border-radius:14px}.modal-header{padding:18px 18px 14px}.booking-modal iframe{height:70vh}.fallback-link{margin:14px 18px 20px}.how-section,.faq-section{margin-top:44px;padding:30px 18px;border-radius:22px}.section-intro{margin-bottom:24px}.steps-grid{grid-template-columns:1fr}.step-card{min-height:auto;padding:20px}.step-card span{margin-bottom:28px}.faq-section{margin-top:28px}.faq-item{display:block}.faq-item summary{gap:18px}.faq-item p{padding-right:0}.site-footer{align-items:flex-start;flex-direction:column;gap:24px;width:min(100% - 28px,1080px);padding:36px 0 42px}}
