:root{color-scheme:light;--surface-shell:#f0ece6;--surface-canvas:#eae6e1;--surface-card:#f7f3ee;--surface-card-alt:#f0ebe4;--text-primary:#292724;--text-secondary:#625d57;--border-color:#dad2c8;--border:1px solid var(--border-color);--accent:#ff681a;--accent-hover:#f57b3a;--accent-ink:#a33f0c;--accent-wash:#ff681a14;--control-border:#8a7f75;--error:#b42318;--shell-glass:#f0ece6f0;--display:"Poppins", system-ui, sans-serif;--mono:"Poppins", system-ui, sans-serif;--maxw:1280px;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--display);background:var(--surface-canvas);color:var(--text-primary);line-height:1.5;overflow-x:hidden}::selection{background:var(--accent);color:var(--text-primary)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.grain{z-index:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}@media (pointer:fine){.custom-cursor{cursor:url(/cursor.svg?v=2) 4 3,auto}.custom-cursor :is(a,button,.btn,[data-cursor],label,summary,select){cursor:url(/cursor.svg?v=2) 4 3,pointer}}.wrap{width:min(100% - 48px, var(--maxw));z-index:2;margin-inline:auto;position:relative}section{z-index:2;position:relative}.eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-ink);align-items:center;gap:10px;font-size:12px;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);opacity:.7;width:26px;height:1px;display:inline-block}.nav{z-index:100;transition:background .4s var(--ease), border-color .4s var(--ease), padding .4s var(--ease), box-shadow .4s var(--ease);background:var(--surface-shell);border-bottom:var(--border);justify-content:space-between;align-items:center;padding:22px clamp(24px,4vw,56px);display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{background:var(--shell-glass);backdrop-filter:blur(16px);border-bottom:var(--border);padding-top:16px;padding-bottom:16px}.brand{align-items:center;gap:16px;display:flex}.brand .logo{width:auto;height:40px}.nav-links{align-items:center;gap:34px;display:flex}.nav-links a{color:var(--text-secondary);letter-spacing:.01em;font-size:14px;font-weight:600;transition:color .25s;position:relative}.nav-links a:after{content:"";background:var(--accent);width:0;height:1px;transition:width .3s var(--ease);position:absolute;bottom:-6px;left:0}.nav-links a:hover{color:var(--text-primary)}.nav-links a:hover:after{width:100%}.nav-links a[aria-current=page],.mobile-menu a[aria-current=page]{color:var(--accent-ink)}.nav-links a[aria-current=page]:after{width:100%}.nav-links>a:not(.btn){text-align:center;min-width:44px}.nav-links>a[href$=\#pricing]{min-width:64px}.nav-links .btn{justify-content:center;min-width:104px}.nav-burger{border:var(--border);cursor:pointer;background:0 0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;margin-left:14px;padding:0;transition:border-color .25s,background .25s;display:none}.nav-burger:hover{border-color:var(--accent)}.nav-burger span{background:var(--text-primary);width:20px;height:2px;transition:transform .3s var(--ease), opacity .2s var(--ease);border-radius:2px;display:block}.nav-burger[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-burger[aria-expanded=true] span:nth-child(2){opacity:0}.nav-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-menu{z-index:95;background:var(--surface-shell);border-bottom:var(--border);max-height:100svh;transition:transform .42s var(--ease);visibility:hidden;flex-direction:column;gap:4px;padding:96px clamp(24px,6vw,44px) 36px;display:flex;position:fixed;top:0;left:0;right:0;overflow-y:auto;transform:translateY(-110%)}.mobile-menu.open{visibility:visible;transform:translateY(0)}.mobile-menu a:not(.btn){color:var(--text-primary);border-bottom:1px solid var(--border-color);padding:16px 0;font-size:20px;font-weight:500}.mobile-menu a:not(.btn):active{color:var(--accent-ink)}.mobile-menu .btn{justify-content:center;margin-top:22px}body.menu-open{overflow:hidden}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px;border-radius:4px}.btn:focus-visible,.lang-toggle button:focus-visible{outline-offset:2px}.btn{font-family:var(--display);cursor:pointer;transition:transform .2s var(--ease), background .25s, color .25s, border-color .25s;white-space:nowrap;border:1px solid #0000;border-radius:100px;align-items:center;gap:9px;padding:12px 22px;font-size:14px;font-weight:500;display:inline-flex}.btn-primary{background:var(--accent);color:var(--text-primary);font-weight:600}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-2px)}.btn-ghost{border-color:var(--control-border);color:var(--text-primary);background:var(--surface-card)}.btn-ghost:hover{border-color:var(--accent-ink);color:var(--accent-ink);background:var(--surface-card-alt)}.btn-lg{padding:17px 32px;font-size:16px}.lang-toggle{isolation:isolate;border:var(--border);background:var(--surface-card);border-radius:100px;flex-shrink:0;grid-template-columns:repeat(2,44px);padding:3px;display:inline-grid;position:relative}.lang-toggle:before{content:"";z-index:-1;border-radius:inherit;background:var(--accent);width:calc(50% - 3px);transition:transform .42s var(--ease);position:absolute;inset:3px auto 3px 3px;transform:translate(0)}.lang-toggle[data-active-lang=id]:before{transform:translate(100%)}.lang-toggle button{font:600 12px/18px var(--display);letter-spacing:.06em;-webkit-appearance:none;appearance:none;min-height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:100px;padding:8px 0;transition:color .3s}.lang-toggle button[aria-pressed=true],.lang-toggle button:hover{color:var(--text-primary)}.reveal{transition:opacity .9s var(--ease), transform .9s var(--ease)}.reveal-pending{opacity:0;transform:translateY(34px)}.reveal.in{opacity:1;transform:none}.reveal-d1{transition-delay:80ms}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}.section-pad{padding:clamp(44px,6vh,84px) 0}.sec-head{max-width:780px;margin-bottom:40px}.sec-head h2{letter-spacing:-.025em;text-wrap:balance;margin-top:14px;font-size:clamp(30px,3.5vw,48px);font-weight:700;line-height:1.04}.sec-head p{color:var(--text-secondary);max-width:58ch;margin-top:14px;font-size:clamp(15px,1.1vw,17px);font-weight:400;line-height:1.5}.cta{text-align:center;background:var(--surface-card);overflow:hidden}.cta:before{content:"";z-index:0;background:radial-gradient(70% 120% at 50% 120%, var(--accent-wash), transparent 60%);position:absolute;inset:0}.cta .wrap{flex-direction:column;align-items:center;display:flex}.cta h2{letter-spacing:-.035em;text-wrap:balance;max-width:14ch;margin-top:24px;font-size:clamp(34px,5vw,72px);font-weight:700;line-height:.98}.cta h2 .accent{color:var(--accent-ink)}.cta p{color:var(--text-secondary);max-width:46ch;margin-top:16px;font-size:17px;font-weight:400}.cta p b{color:var(--text-primary);font-weight:600}.cta .hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:28px;display:flex}.foot{background:var(--surface-shell);border-top:var(--border);padding:48px 0 24px}.foot-top{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,.8fr);align-items:center;gap:42px;display:grid}.foot .brand-lg{grid-template-columns:200px minmax(0,1fr);align-items:center;gap:32px;display:grid}.foot .brand-lg .logo-lg{width:200px;height:auto}.foot .brand-lg p{color:var(--text-secondary);max-width:42ch;font-size:13px;line-height:1.8}.foot-contact,.foot-legal{border-left:var(--border);min-width:0;padding-left:32px}.foot-contact h2,.foot-legal h2{color:var(--text-secondary);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:500}.contact-note{color:var(--text-secondary);margin-top:10px;font-size:15px}.contact-address,.legal-address{border-bottom:var(--border);color:var(--accent-ink);justify-content:space-between;align-items:center;gap:16px;padding-block:12px;font-size:clamp(18px,1.6vw,22px);font-weight:500;display:flex}.contact-address span,.legal-address span{overflow-wrap:anywhere;min-width:0}.contact-address svg,.legal-address svg{flex:0 0 20px}.contact-address:hover,.legal-address:hover{color:var(--text-primary);border-bottom-color:var(--text-primary)}.foot-contact a:focus-visible,.foot-legal a:focus-visible{outline:2px solid var(--accent-ink);outline-offset:5px}.foot-bot{border-top:var(--border);justify-content:space-between;align-items:center;gap:24px;margin-top:32px;padding-top:20px;display:flex}.foot-bot p{color:var(--text-secondary);font-size:11px;line-height:1.7}@media (width<=980px){.foot-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.foot .brand-lg{grid-template-columns:1fr;gap:16px}.foot .brand-lg .logo-lg{width:180px}}@media (width<=760px){.foot{padding:36px 0 24px}.foot-top{grid-template-columns:1fr;gap:24px}.foot-contact,.foot-legal{border-left:0;border-top:var(--border);padding:24px 0 0}.foot-bot{flex-direction:column;align-items:flex-start;gap:8px;margin-top:24px;padding-top:18px}}.trial-note{font-family:var(--mono);letter-spacing:.04em;color:var(--text-secondary);flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 22px;margin-top:14px;font-size:12px;display:flex}.trial-note span{align-items:center;gap:8px;display:inline-flex}.trial-note span:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px}.pricing{background:var(--surface-canvas);scroll-margin-top:90px}.pricing .sec-head{text-align:center;margin-inline:auto;margin-bottom:48px}.pricing .sec-head p{margin-inline:auto}.billing-catalog{min-height:380px}.billing-catalog>.billing-calculator{margin-bottom:40px}.billing-calculator{border:1px solid var(--accent);background:var(--accent-wash);width:100%;min-width:0;max-width:520px;box-shadow:0 0 0 3px var(--accent-wash);border-radius:14px;grid-template-columns:minmax(0,1fr);gap:16px;margin:0 auto 24px;padding:20px;display:grid}.billing-calculator legend{color:var(--accent-ink);padding:0 8px;font-size:14px;font-weight:500}.billing-field{min-width:0}.billing-field label{color:var(--text-secondary);margin-bottom:8px;font-size:13px;display:block}.billing-field :is(input,select){width:100%;min-width:0;color:var(--text-primary);background:linear-gradient(var(--accent-wash), var(--accent-wash)), var(--surface-card);border:1px solid var(--accent);min-height:46px;font:16px var(--display);border-radius:8px;padding:10px 12px;display:block}.billing-field input{cursor:text}.billing-field select{cursor:pointer}.billing-field input[aria-invalid=true]{border-color:var(--error)}.billing-input-error{color:var(--error);font-size:12px;line-height:1.5}.billing-input-error:not(:empty){margin-top:8px}.billing-catalog-toolbar{margin:28px 0 24px}.billing-catalog-toolbar p{max-width:680px;font-size:13px}.billing-tax-note{color:var(--text-primary);margin-bottom:8px;font-weight:500}.price-grid{grid-template-columns:repeat(var(--plan-count,3), minmax(0, 1fr));align-items:stretch;gap:24px;display:grid}.price-card:only-child{justify-self:center;width:100%;max-width:520px}.price-card{border:var(--border);background:var(--surface-card);overflow-wrap:anywhere;min-width:0;transition:transform .3s var(--ease), border-color .3s, box-shadow .3s;border-radius:22px;flex-direction:column;padding:34px 28px 22px;display:flex;position:relative;box-shadow:0 16px 40px #2927240f}.price-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);height:2px;position:absolute;top:-1px;left:28px;right:28px}.price-card:hover{border-color:var(--accent);transform:translateY(-6px);box-shadow:0 24px 50px #2927241a}.price-card.featured{border-color:var(--accent);box-shadow:0 24px 70px #ff681a1a, inset 0 0 0 1px var(--accent)}.price-card[data-tier=enterprise]{background:var(--surface-card-alt)}.price-card[data-tier=enterprise]:before{background:linear-gradient(90deg, transparent, var(--text-secondary), transparent)}.pc-badge{background:var(--accent);color:var(--text-primary);white-space:nowrap;font:600 11px/16px var(--mono);letter-spacing:.1em;text-transform:uppercase;border-radius:100px;padding:7px 16px;position:absolute;top:-16px;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #ff681a1f}.pc-eyebrow{font:11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:12px;line-height:1.5}.pc-name{letter-spacing:-.04em;color:var(--text-primary);font-size:clamp(27px,2.7vw,36px);font-weight:600;line-height:1.15}.pc-description{min-height:3.2em;color:var(--text-secondary);margin-top:12px;font-size:14px;line-height:1.6}.pc-rates{border-top:var(--border);flex-direction:column;flex:1;gap:12px;margin-top:24px;padding-top:24px;display:flex}.pc-price{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.pc-rate-label{color:var(--text-secondary);font-size:12px}.pc-price .amt{letter-spacing:-.03em;font-variant-numeric:tabular-nums;max-width:100%;font-size:clamp(30px,3vw,42px);font-weight:700;line-height:1.1}.pc-price--annual{border-top:var(--border);margin-top:8px;padding-top:16px}.pc-price--annual .amt{font-size:clamp(24px,2.5vw,32px)}.pc-tax-marker{vertical-align:super;color:var(--accent-ink);margin-left:2px;font-size:.5em;line-height:0}.pc-price .per{font:12px var(--mono);color:var(--text-secondary)}.pc-context{font-size:13px}.pc-rates .billing-annual-offer{margin-top:0}.pc-products{border-top:var(--border);margin-top:24px;padding-top:20px}.pc-products-label{color:var(--text-secondary);font-size:12px;line-height:18px}.pc-product-list{flex-wrap:wrap;gap:8px;margin-top:8px;list-style:none;display:flex}.pc-product-list li{border:var(--border);background:var(--surface-card-alt);color:var(--text-primary);border-radius:6px;padding:4px 10px;font-size:13px;font-weight:500;line-height:20px}.pc-plan-note{text-align:center;color:var(--text-secondary);margin:24px 0 4px;font-size:11px;line-height:1.6}.billing-catalog .btn{white-space:normal;text-align:center;justify-content:center}.billing-catalog .btn:focus-visible{outline-offset:4px;border-radius:6px}@media (width>=981px){.price-card.featured{transform:translateY(-8px)}.price-card.featured:hover{transform:translateY(-12px)}}@media (width<=980px){.price-grid{grid-template-columns:1fr;gap:32px;max-width:520px;margin-inline:auto}}.billing-muted{color:var(--text-secondary);font-size:14px;line-height:1.6}.billing-annual-offer{color:var(--accent-ink);margin-top:18px;font-size:13px}.billing-state{text-align:center;border:var(--border);background:var(--surface-card);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:300px;padding:48px 24px;display:flex}.billing-state h3{font-size:22px}.billing-state .btn{margin-top:8px}.billing-spinner{border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.9s linear infinite billing-spin}@keyframes billing-spin{to{transform:rotate(360deg)}}@media (width>=941px){.pricing,.cta{flex-direction:column;justify-content:center;min-height:100vh;display:flex}}@media (width<=760px){.billing-calculator{grid-template-columns:1fr;gap:16px;padding:16px}.price-card{padding:28px 22px}.pricing .sec-head{margin-bottom:32px}}@media (width>=941px) and (height<=920px){.trial-note{margin-top:10px}}.landing-canvas{background:var(--surface-shell);align-items:center;min-height:100svh;padding:128px 0 56px;display:flex;overflow:hidden}.hotel-hero-layout{grid-template-columns:minmax(300px,.8fr) minmax(0,1.6fr);align-items:center;gap:12px;display:grid}.hotel-intro{z-index:2;text-align:left;position:relative}.hotel-intro:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(#f0ece6f7 22%,#f0ece6cc 48%,#f0ece600 72%);position:absolute;inset:-60px -45px}.hotel-eyebrow{color:var(--text-secondary);letter-spacing:.18em;font-size:10px;font-weight:600;line-height:14px}.hotel-intro h1{letter-spacing:-.055em;margin-top:18px;font-size:clamp(48px,5.4vw,104px);font-weight:500;line-height:1.12}.hotel-intro h1 span{color:var(--accent);display:block}.hotel-description{max-width:39ch;color:var(--text-secondary);text-wrap:pretty;margin:22px 0 0;font-size:18px;line-height:28px}.hotel-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:22px;margin-top:28px;display:flex}.hotel-actions .btn{border-radius:8px;gap:24px;min-height:48px;padding:12px 23px;font-size:13px}.hotel-scene{width:100%;min-width:0;margin:0;position:relative}.hotel-stage{isolation:isolate;padding-bottom:16%;position:relative}.hotel-coordinate-space{position:relative;transform:translate(3%)}.hotel-world{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hotel-city{opacity:.65;transform:translate(350px,28px)scale(.6)}.hotel-property{position:relative}.hotel-backdrop{z-index:0;width:100%;height:auto;position:absolute;inset:0}.hotel-drawing{z-index:1;width:100%;height:auto;display:block;position:relative;overflow:visible}.hotel-beach-foreground{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hotel-annotation{z-index:3;pointer-events:none;flex-direction:column;gap:3px;display:flex;position:absolute;transform:translateY(-100%)}.hotel-annotation--pms{max-width:18%;top:78.6765%;left:8.0357%}.hotel-annotation--ai{text-align:left;top:5.1471%;left:76.7857%}.hotel-annotation--cm{top:14.4118%;left:28.125%}.hotel-annotation-label{color:var(--accent-ink);letter-spacing:.06em;font-size:11px;font-weight:600;line-height:16px}.hotel-annotation-value{color:var(--text-primary);font-size:13px;font-weight:400;line-height:20px}.hotel-product-routes{stroke:var(--accent);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.hotel-product-route{stroke-opacity:.3}.hotel-product-routes--mobile{display:none}.hotel-scene{--hotel-animation-state:paused}.hotel-scene[data-motion=playing]{--hotel-animation-state:running}@media (width>=941px){.hotel-hero-layout{width:calc(100% - clamp(48px,6vw,128px))}.hotel-intro{transform:translateY(-24px)}}@media (width>=941px) and (width<=1150px){.hotel-hero-layout{grid-template-columns:300px minmax(0,1fr);gap:0}.hotel-intro h1{font-size:clamp(48px,5vw,52px)}.hotel-annotation-value{font-size:12px}}@media (width<=940px){.landing-canvas{padding-top:112px}.hotel-hero-layout{grid-template-columns:minmax(0,1fr);gap:28px}.hotel-intro{text-align:center}.hotel-intro:before{display:none}.hotel-intro h1{font-size:clamp(48px,7vw,60px)}.hotel-intro h1 span{display:inline-block}.hotel-description{max-width:54ch;margin-inline:auto;font-size:16px;line-height:25px}.hotel-actions{justify-content:center}.hotel-annotation-value{font-size:12px}}@media (width<=620px){.landing-canvas{padding-top:108px;padding-bottom:24px}.hotel-eyebrow{letter-spacing:.13em}.hotel-intro h1{margin-top:18px;font-size:clamp(44px,10.6vw,62px)}.hotel-intro h1 span{display:block}.hotel-description{max-width:37ch;margin-top:18px}.hotel-actions{gap:20px;margin-top:22px}.hotel-actions .btn{gap:20px;padding-inline:20px}.hotel-stage{margin-inline:-24px}.hotel-coordinate-space{width:82%;margin-left:13%;transform:none}.hotel-annotation{transform:translate(-50%,-100%)}.hotel-annotation--ai{top:16.7647%;left:76.3393%;right:auto}.hotel-annotation--cm{top:23.8235%;left:31.6964%}.hotel-annotation-label{background:var(--surface-shell);border-radius:3px;padding:1px 4px}.hotel-annotation-value,.hotel-product-routes--desktop{display:none}.hotel-product-routes--mobile{stroke-width:2.5px;display:block}}@media (width<=370px){.hotel-actions{gap:16px}.hotel-actions .btn{gap:14px;padding-inline:16px}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#pricing{scroll-margin-top:85px}@media (width<=860px){.brand{flex-shrink:0}.brand .logo{height:28px}.nav-links{margin-left:auto}.nav-links a{display:none}.nav-burger{flex-shrink:0;display:inline-flex}}@media (width<=370px){.brand .logo{height:25px}}.nav a:focus-visible,.nav button:focus-visible,.mobile-menu a:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lang-toggle:before,.lang-toggle button{transition:none}.reveal{opacity:1;transition:none;transform:none}.billing-spinner{animation:none}.price-card,.billing-catalog .btn{transition:none}.price-card:hover,.price-card.featured,.price-card.featured:hover{transform:none}.pricing{scroll-behavior:auto}}
