/* Public restaurant experience. The 3D room uses CSS, with no WebGL dependency. */
.public-page{--cream:#f6f1e7;--ink:#25332b;--muted:#687069;--accent:#ae452c;--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,system-ui,sans-serif;margin:0;background:var(--cream);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
.public-page *{box-sizing:border-box}
.public-page a{color:inherit;text-decoration:none}
.public-page button{font:inherit;cursor:pointer}
.public-page a:focus-visible,.public-page button:focus-visible,.public-page summary:focus-visible{outline:3px solid #ae452c;outline-offset:5px}
.public-page .wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}
.public-page h1,.public-page h2,.public-page h3,.public-page p{margin:0}
.public-page h1,.public-page h2,.public-page h3{font-family:var(--serif);font-weight:500;line-height:1.02;letter-spacing:-.04em}
.public-page h2{font-size:clamp(40px,4.4vw,66px)}
.public-page em{font-weight:500}
.public-page .eyebrow{font:600 10px/1.6 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.skip-link{position:absolute;z-index:20;top:-100px;left:20px;padding:12px;background:#fff}
.skip-link:focus{top:10px}
.public-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;height:108px;border-bottom:1px solid #25332b25}
.public-logo{font:700 47px/.85 var(--sans);letter-spacing:-.065em;display:flex;align-items:center;gap:18px}
.public-logo span{font:500 10px/1.4 var(--sans);letter-spacing:0;border-left:1px solid #25332b40;padding-left:18px;max-width:80px}
.public-nav nav{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:500}
.public-nav .nav-login{border:1px solid #25332b70;padding:11px 25px;border-radius:50px}
.public-nav .nav-login span{margin-left:16px}
.public-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:20px;align-items:center;min-height:760px;padding-block:60px 80px}
.hero-copy{position:relative;z-index:2}
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#738960;box-shadow:0 0 0 4px #73896016;margin-right:9px;flex-shrink:0}
.public-page h1{font-size:clamp(76px,7.6vw,116px);line-height:.88;margin:29px 0 28px;letter-spacing:-.052em}
.public-page h1 em{color:var(--accent)}
.hero-description{max-width:420px;font-size:14px;color:#576259}
.public-actions{display:flex;align-items:center;gap:21px;flex-wrap:wrap;margin-top:27px}
.public-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:15px 24px;border-radius:50px;font:600 12px/1.5 var(--sans);transition:transform .2s,background .2s}
.public-button:hover{transform:translateY(-3px)}
.public-page .public-button.primary{background:var(--accent);color:#fff8ee}
.public-page .public-button.light{background:#f2dfb1;color:#25332b}
.public-button>span{font-size:21px;line-height:1}
.text-link{font-size:12px;font-weight:600;border-bottom:1px solid;padding-block:7px}
.text-link>span{padding-left:10px;font-size:18px}
.hero-caption{display:flex;align-items:center;gap:15px;margin-top:29px;color:#72796e;font-size:10px;line-height:1.5}
.mini-plates{display:flex;padding-left:6px}
.mini-plates b{display:grid;place-items:center;border:3px solid var(--cream);background:#ddd1b6;border-radius:50%;width:33px;height:33px;margin-left:-6px;font-size:25px;font-weight:400;color:#ae452c}
.mini-plates b:nth-child(2){color:#717b55;background:#e9deca}
.mini-plates b:nth-child(3){color:#c99744;background:#e5d8be}
.world-preview{min-width:0;position:relative;border-radius:180px 180px 24px 24px;background:radial-gradient(ellipse at 50% 44%,#ede4cd 0, #ede5d657 48%,transparent 72%);padding:45px 0 20px;--chair:#a44f35;--rug:#b8bd93}
.world-top{display:flex;justify-content:space-between;gap:14px;padding:0 20px;font:500 10px var(--sans);color:#747968}
.world-coordinate{letter-spacing:.12em;font-size:9px}
.restaurant-world{position:relative;height:430px;perspective:1300px;isolation:isolate}
.world-halo{position:absolute;inset:8% 2% 2%;border:1px solid #25332b12;border-radius:50%;transform:rotate(-15deg)}
.world-halo::after{content:'';position:absolute;inset:23px;border:1px dashed #25332b16;border-radius:50%}
.scene-world{position:absolute;left:50%;top:54%;width:360px;height:300px;margin:-150px 0 0 -180px;transform:rotateX(var(--scene-x,57deg)) rotateZ(var(--scene-z,-32deg));transform-style:preserve-3d;transition:transform .35s ease-out}
.scene-world *{position:absolute;transform-style:preserve-3d}
.scene-floor{inset:0;background-color:#dfc9a5;background-image:linear-gradient(#b79b742a 1px,transparent 1px),linear-gradient(90deg,#b79b742a 1px,transparent 1px);background-size:45px 45px;box-shadow:-7px 8px 0 #c7ad87,-16px 23px 40px #3b402c33}
.scene-wall{background:#c9c7a6;border-bottom:7px solid #657151}
.scene-wall.back{width:360px;height:155px;top:0;left:0;transform-origin:50% 0;transform:rotateX(90deg);background:linear-gradient(0deg,#d9d3b6,#eeead7);border:0;border-top:7px solid #687254}
.scene-wall.side{width:155px;height:300px;left:0;top:0;transform-origin:0 50%;transform:rotateY(-90deg);background:linear-gradient(90deg,#c4c3a0,#d4d0b2);border:0;border-left:7px solid #687254}
.wall-sign{left:24px;top:25px;font:bold 41px Inter,sans-serif;letter-spacing:-.06em;transform:rotateX(180deg)}
.wall-sign span{display:block;position:static;font:8px Inter,sans-serif;letter-spacing:0;margin-top:8px}
.wall-window{right:15px;top:18px;width:150px;height:115px;border:6px solid #586246;transform:rotateX(180deg);box-shadow:0 0 0 3px #d9d3b6}
.wall-window img{width:100%;height:100%;object-fit:cover;position:static}
.wall-menu{top:80px;left:33px;padding:16px 10px;background:#344c3b;color:#ecebd8;font:9px/1.8 Inter,sans-serif;text-align:center;transform:rotateY(180deg) rotateZ(90deg);border:4px solid #aa895e;width:90px}
.wall-menu b{position:static;font-size:8px;font-weight:400}
.scene-rug{left:64px;top:81px;width:254px;height:174px;border-radius:48%;background:var(--rug);border:5px solid #a6aa8177;transform:translateZ(2px);transition:background .35s}
.scene-table{left:93px;top:104px;width:190px;height:104px;border:5px solid #b38a58;border-radius:52px;background:repeating-linear-gradient(0deg,#cda570 0 7px,#cba16a 7px 8px);box-shadow:0 7px 0 #9a7045,0 18px 15px #4b46222a;transform:translateZ(65px)}
.table-leg{width:10px;height:65px;top:122px;background:#755c3e;transform-origin:50% 0;transform:rotateX(90deg)}
.table-leg.one{left:119px}.table-leg.two{left:253px}
.scene-chair{width:48px;height:47px;background:var(--chair);border:5px solid #783e2d;border-radius:14px;transform:translateZ(35px);box-shadow:0 8px 0 #713e2c,0 22px 10px #49372e22;transition:background .35s}
.scene-chair::before{content:'';position:absolute;left:-4px;top:-5px;width:46px;height:42px;background:var(--chair);border:4px solid #783e2d;border-radius:12px 12px 0 0;transform-origin:50% 0;transform:rotateX(90deg)}
.scene-chair::after{content:'';position:absolute;width:6px;height:35px;background:#705333;left:2px;top:0;transform-origin:50% 0;transform:rotateX(90deg) translateY(-35px)}
.c1{left:119px;top:60px}.c2{left:208px;top:60px}.scene-chair.c3{left:119px;top:215px;transform:translateZ(35px) rotateZ(180deg)}.scene-chair.c4{left:208px;top:215px;transform:translateZ(35px) rotateZ(180deg)}
.plate{width:35px;height:35px;border:6px solid #fff6df;border-radius:50%;background:radial-gradient(circle at 40% 40%,#839350 0 24%,transparent 26%),radial-gradient(circle at 66% 58%,#b45a35 0 24%,#debd79 26% 57%,#f4e6c4 59%);box-shadow:0 2px 0 #ad9975,0 4px 5px #54422a24;transform:translateZ(3px)}
.p1{left:32px;top:7px}.p2{right:29px;top:7px}.p3{left:32px;bottom:7px}.p4{right:29px;bottom:7px}
.table-vase{width:15px;height:15px;border-radius:50%;background:#42633d;left:84px;top:41px;transform:translateZ(16px);box-shadow:0 4px 0 #527343,0 9px 0 #b75e3c,0 13px 0 #9a583b}
.scene-plant{left:304px;top:25px;width:32px;height:32px;border-radius:50%;background:#a86641;transform:translateZ(31px);box-shadow:0 10px 0 #a5633e,0 20px 0 #935939}
.scene-plant span{width:30px;height:16px;border-radius:90% 0 90% 0;background:#527144;left:-10px;top:5px;transform:translateZ(22px) rotateZ(35deg)}
.scene-plant span:nth-child(2){left:13px;transform:translateZ(20px) rotateZ(140deg);background:#6b8751}
.scene-plant span:nth-child(3){left:1px;top:-15px;transform:translateZ(30px) rotateZ(90deg)}
.scene-plant span:nth-child(4){left:4px;top:23px;transform:translateZ(23px) rotateZ(30deg);background:#7c915b}
.world-badge{position:absolute;right:3%;bottom:19px;padding:13px 17px;border:1px solid #25332b16;border-radius:12px;background:#fffaf0e8;box-shadow:0 12px 28px #34403510;font-size:10px;transform:rotate(-3deg)}
.occasion-picker{position:relative;display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:2px}
.occasion-picker button{border:1px solid #25332b33;border-radius:50px;background:transparent;padding:11px 17px;color:#25332b;font-size:11px;font-weight:500;min-height:44px}
.occasion-picker button[aria-pressed=true]{background:#25332b;color:#fff8ee;border-color:#25332b}
.public-page .occasion-copy{text-align:center;font-size:11px;color:#55614e;margin:14px 15px 4px;min-height:36px}
.scene-note{display:block;text-align:center;font-size:9px;color:#7b7d71}
.world-preview[data-occasion=team]{--chair:#667c68;--rug:#d3c099}
.world-preview[data-occasion=business]{--chair:#525f68;--rug:#b9aa90}
.public-marquee{display:flex;justify-content:space-around;align-items:center;gap:26px;border-block:1px solid #25332b25;padding:23px 20px;overflow:hidden;white-space:nowrap;font:500 21px var(--serif)}
.public-marquee b{font:28px var(--sans);color:var(--accent)}
.public-section{padding-block:100px}
.section-heading .eyebrow{margin-bottom:20px}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:48px}
.steps-grid article{padding-top:22px;border-top:1px solid #25332b40}
.step-number{font-size:9px;letter-spacing:.12em}
.steps-grid h3{font-size:33px;margin:25px 0 15px}
.steps-grid p{font-size:13px;color:#667064}
.public-page .conditions-note{font-size:10px;color:#72796e;margin-top:28px}
.moments-section{background:#eae5d8;padding-block:86px}
.moments-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:40px}
.moment-card{min-width:0}
.moment-card img{display:block;width:100%;height:350px;object-fit:cover;border-radius:5px}
.moment-card:nth-child(2){padding-top:48px}
.moment-card:nth-child(3){padding-top:96px}
.moment-card div{padding-top:22px}
.moment-card span{font-size:9px;letter-spacing:.13em}
.moment-card h3{font-size:34px;margin:17px 0 14px}
.moment-card p{font-size:12px;color:#667064;max-width:310px}
.partner-section{background:#25392d;color:#f6f1e7;padding-block:110px 70px;position:relative;overflow:hidden}
.partner-section::before{content:'';position:absolute;width:800px;height:800px;right:-300px;top:0;border:1px solid #dae0bd13;border-radius:50%;pointer-events:none;box-shadow:0 0 0 50px #dae0bd05,0 0 0 120px #dae0bd03}
.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative}
.partner-copy>.eyebrow{color:#c9d1b3;margin-bottom:24px}
.partner-copy h2{font-size:clamp(44px,4.7vw,70px)}
.partner-copy h2 em{color:#d9c697}
.partner-copy>p:not(.eyebrow){font-size:13px;max-width:430px;color:#c2cabc;margin:28px 0}
.partner-note{display:block;font-size:10px;color:#b4c0ac;margin-top:16px}
.partner-showcase{perspective:1100px;padding-bottom:50px}
.partner-photo{position:relative;transform:rotateY(-10deg) rotateZ(3deg);transform-origin:50% 80%;box-shadow:15px 15px 0 #ffffff0a;border:1px solid #ffffff20;border-radius:10px;overflow:hidden}
.partner-photo img{width:100%;height:335px;display:block;object-fit:cover}
.partner-photo>span{position:absolute;left:20px;top:20px;background:#f6f1e7ed;color:#25332b;padding:9px 11px;font-size:8px;letter-spacing:.08em;border-radius:5px}
.partner-place{position:relative;display:flex;gap:15px;align-items:center;background:#f6f1e7;color:#25332b;padding:24px 18px;border-radius:10px;transform:translate(-15px,-12px) rotateZ(-2deg);box-shadow:0 22px 30px #0002}
.place-pin{font-size:30px;background:#e5e5d6;border-radius:50%;width:47px;height:47px;display:grid;place-items:center;flex:none}
.partner-place h3{font-size:30px}
.partner-place p{font-size:10px;margin-top:6px}
.place-label{margin-left:auto;font-size:9px;border:1px solid #25332b33;border-radius:20px;padding:5px 10px;white-space:nowrap}
.partner-message{display:flex;align-items:center;gap:15px;margin:20px 0 0 55px}
.partner-message>span{font-size:43px;line-height:1;color:#d9c697}
.partner-message p{font:italic 23px/1.1 var(--serif);color:#d9dcca}
.partner-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;margin-top:75px!important;border-top:1px solid #ffffff26;padding-top:30px}
.partner-benefits article>span{font-size:10px;color:#bdc8af}
.partner-benefits h3{font-size:31px;margin:20px 0 15px;max-width:300px}
.partner-benefits p{font-size:12px;color:#bfcab8}
.company-section{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:85px;border-bottom:1px solid #25332b25}
.company-section .eyebrow{max-width:190px}
.company-section p:not(.eyebrow){max-width:550px;font-size:13px;color:#667064;margin:24px 0 20px}
.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}
.faq-section h2{margin-top:22px}
.faq-list details{border-bottom:1px solid #25332b30;padding:22px 0}
.faq-list details:first-child{border-top:1px solid #25332b30}
.faq-list summary{cursor:pointer;font-weight:500;font-size:13px;padding-right:15px}
.faq-list details p{font-size:12px;line-height:1.8;margin-top:18px;color:#667064}
.final-invite{padding-block:65px 95px;text-align:center;border-top:1px solid #25332b25}
.final-invite>span{font-size:65px;color:var(--accent);line-height:1;display:block;margin-bottom:25px}
.final-invite h2{font-size:clamp(80px,10vw,140px);line-height:.85;margin:30px 0}
.final-invite h2 em{color:var(--accent)}
.final-invite .public-actions{justify-content:center}
.public-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;padding-block:40px;border-top:1px solid #25332b25}
.public-footer p,.public-footer nav{font-size:10px;color:#667064}
.public-footer nav{display:flex;gap:18px}
.public-footer small{width:100%;font-size:9px;color:#72796e}
/* Shared visual language for sign-in and registration; forms keep their existing behavior. */
html.auth-page,body.auth-page{height:auto!important;min-height:100%;overflow-x:hidden!important;overflow-y:auto!important;background:#f6f1e7!important}
body.auth-page::before{display:none!important}
.auth-page .page{height:auto!important;min-height:100dvh!important;padding:0!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;background:#f6f1e7}
.auth-page .visual{position:sticky;top:0;height:100dvh;padding:0!important;border:0;display:block!important}
.auth-page .illustration{width:100%!important;height:100%!important;max-width:none!important}
.auth-page .illustration::before,.auth-page .spark{display:none!important}
.auth-page .illustration-art{width:100%!important;height:100%!important;border-radius:0!important}
.auth-story{position:relative;width:100%;height:100%;overflow:hidden;border-radius:0;background:#25392d}
.auth-story>img{display:block;width:100%;height:100%;object-fit:cover;opacity:.77}
.auth-story::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#17241a44,transparent 25%,#17241a18 40%,#17241adb)}
.auth-story .auth-story-logo{position:absolute;top:35px;left:35px;z-index:1;color:#fff9e9;font:700 60px/1 Inter,sans-serif;letter-spacing:-.06em}
.auth-story-copy{position:absolute;bottom:45px;left:35px;right:35px;z-index:1;color:#fff9e9}
.auth-story-copy small{font:500 10px Inter,sans-serif;text-transform:uppercase;letter-spacing:.13em}
.auth-story-copy strong{display:block;font:500 clamp(45px,4.7vw,74px)/.95 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;margin-top:18px}
.auth-story-copy p{font:12px/1.6 Inter,sans-serif;margin-top:17px;max-width:320px;color:#f0eadc}
.auth-page .login-side,.auth-page .form-side{height:auto!important;min-height:100dvh;overflow:visible!important;padding:48px clamp(24px,5vw,85px)!important;align-content:center}
.auth-page .login-content,.auth-page .form-content{width:100%!important;max-width:480px!important;margin:auto}
.auth-home{display:inline-block;font:700 34px/1 Inter,sans-serif;letter-spacing:-.06em;color:#25392d;text-decoration:none;margin-bottom:35px}
.auth-home span{font:500 10px Inter,sans-serif;letter-spacing:0;margin-left:14px;color:#63705e}
.auth-page .login-title,.auth-page .form-title{text-align:left!important}
.auth-page .login-title h1,.auth-page .form-title h1{font-size:clamp(40px,3.8vw,58px)!important;color:#25392d;line-height:.98!important}
.auth-page .login-title p,.auth-page .form-title p{margin:17px 0 0!important;max-width:none;font-size:13px!important;line-height:1.65!important;color:#667064}
.auth-page .primary-btn{background:#25392d!important}
.auth-page .field{border-radius:12px!important;min-height:54px}
.auth-page .field input{font-size:16px!important}
.auth-page .auth-links{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:20px;font:500 12px Inter,sans-serif}
.auth-page .auth-links .forgot-btn{margin:0!important;color:#25392d}
.auth-page .auth-links a{color:#25392d;text-underline-offset:4px}
.auth-page .partner-auth-link{display:block;margin-top:24px;padding-top:20px;border-top:1px solid #25392d20;font:12px/1.6 Inter,sans-serif;color:#667064}
.partner-auth-link a{color:#25392d;font-weight:600;text-underline-offset:4px}
.auth-page .login-note,.auth-page .signup-note{font-size:10px!important}
.auth-page .mobile-illustration{display:none!important}
@media(min-width:1700px){.restaurant-world{transform:scale(1.1)}}
@media(max-width:1100px){
 .public-page .wrap{width:calc(100% - 56px)}
 .public-hero{gap:5px;min-height:690px}
 .public-page h1{font-size:86px}
 .scene-world{scale:.85}
 .world-top{padding:0 8px;font-size:9px}
 .restaurant-world{height:385px}
 .public-nav nav{gap:20px}
 .partner-grid{gap:35px}
 .partner-place h3{font-size:25px}
 .place-label{display:none}
 .moment-card img{height:290px}
 .steps-grid,.partner-benefits{gap:25px}
 .auth-page .login-side,.auth-page .form-side{padding-inline:35px!important}
}
@media(max-width:760px){
 .public-page .wrap{width:calc(100% - 40px)}
 .public-nav{height:84px}
 .public-logo{font-size:38px;gap:11px}.public-logo span{padding-left:11px;font-size:9px}
 .public-nav nav{gap:16px;font-size:10px}.public-nav nav>a:first-child{display:none}.public-nav .nav-login{padding:10px 15px}.public-nav .nav-login span{margin-left:6px}
 .public-hero{grid-template-columns:1fr;padding-block:45px 35px;gap:15px;min-height:0}
 .public-page h1{font-size:clamp(74px,16vw,106px);margin-block:24px;line-height:.88}
 .hero-description{max-width:490px;font-size:13px}
 .public-actions{gap:17px;margin-top:23px}.public-button{min-height:52px;padding:13px 21px;font-size:11px}
 .hero-caption{display:none}
 .hero-copy .public-actions{gap:16px}
 .hero-copy .public-button{padding-inline:18px;gap:18px}
 .hero-copy .text-link{font-size:11px}
 .world-preview{padding-top:25px;max-width:550px;width:100%;margin:0 auto}
 .world-top{padding-inline:10px}.restaurant-world{height:340px}.scene-world{scale:.8;top:55%}
 .world-badge{right:1%;bottom:13px;padding:12px;font-size:9px}
 .occasion-picker button{font-size:10px;padding-inline:14px}
 .public-marquee{justify-content:flex-start;gap:24px;padding:19px 20px;font-size:19px}.public-marquee b{font-size:22px}
 .public-section{padding-block:65px}.public-page h2{font-size:43px}
 .steps-grid{grid-template-columns:1fr;gap:26px;margin-top:30px}.steps-grid h3{margin:15px 0 10px;font-size:32px}.steps-grid p{max-width:480px}
 .moments-section{padding-block:60px}.moments-grid{grid-template-columns:1fr;margin-top:28px;gap:38px}.moment-card:nth-child(n){padding:0}.moment-card img{height:auto;aspect-ratio:1.12;max-height:430px}.moment-card div{padding-top:18px}.moment-card h3{font-size:36px}.moment-card p{max-width:420px;font-size:13px}
 .partner-section{padding-block:65px 55px}.partner-grid{grid-template-columns:1fr;gap:50px}.partner-copy h2{font-size:49px}.partner-copy>p:not(.eyebrow){font-size:13px}.partner-showcase{padding:0 8px 0 12px;max-width:530px}.partner-photo img{height:300px}.partner-place{padding:18px 14px;gap:12px}.partner-place h3{font-size:27px}.partner-message{margin:15px 0 0 22px}
 .partner-benefits{grid-template-columns:1fr;gap:27px;margin-top:45px!important;padding-top:28px}.partner-benefits h3{margin:12px 0 10px;max-width:420px}.partner-benefits p{max-width:430px;font-size:13px}
 .company-section{grid-template-columns:1fr;gap:25px;padding-block:60px}.company-section .eyebrow{max-width:none}
 .faq-section{grid-template-columns:1fr;gap:30px}.faq-section h2 br{display:none}.faq-list details{padding:20px 0}
 .final-invite{padding-block:55px 65px}.final-invite h2{font-size:100px}.final-invite .public-actions{flex-direction:column}
 .public-footer{gap:28px;padding-block:32px}.public-footer p{margin-left:auto}.public-footer nav{width:100%}
 .auth-page .page{display:block!important;min-height:100dvh!important}
 .auth-page .visual{display:none!important}
 .auth-page .login-side,.auth-page .form-side{display:block!important;min-height:100dvh;padding:25px 22px 40px!important}
 .auth-home{font-size:31px;margin-bottom:23px}
 .auth-page .mobile-illustration{display:block!important;width:calc(100% + 44px)!important;height:190px!important;max-height:none!important;margin:0 -22px 27px!important}
 .auth-story{border-radius:0}.auth-story::after{background:linear-gradient(90deg,#17241ab0,#17241a33)}
 .auth-story .auth-story-logo{display:none}.auth-story-copy{left:22px;right:22px;bottom:27px}.auth-story-copy strong{font-size:38px;max-width:270px;margin-top:9px}.auth-story-copy small{font-size:8px}.auth-story-copy p{display:none}
 .auth-page .login-title h1,.auth-page .form-title h1{font-size:43px!important}.auth-page .login-title p,.auth-page .form-title p{font-size:12px!important;margin-top:12px!important}
 .auth-page .login-form,.auth-page .signup-form{margin-top:23px!important}
 .auth-page .double-row{grid-template-columns:1fr!important}
}
@media(max-width:360px){
 .public-page .wrap{width:calc(100% - 32px)}.public-logo span{display:none}.public-nav nav{gap:13px}.public-page h1{font-size:73px}
 .scene-world{scale:.67}.restaurant-world{height:300px}.world-top{font-size:8px}.world-coordinate{font-size:8px}.world-badge{font-size:8px}.occasion-picker{gap:5px}.occasion-picker button{padding-inline:11px;font-size:9px}
 .partner-place h3{font-size:23px}.partner-place p{font-size:9px}.place-pin{width:37px;height:37px}.public-footer p{margin-left:0}
}
@media(min-width:761px){
 html.auth-page,body.auth-page{width:100%;height:100%!important;min-height:0!important;overflow:hidden!important}
 .auth-page .page{width:100%;height:100dvh!important;min-height:0!important;overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(520px,1fr)!important}
 .auth-page .visual{position:relative;top:auto;height:100dvh;min-height:0}
 .auth-page .login-side,.auth-page .form-side{height:100dvh!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;padding:28px clamp(34px,4vw,72px)!important}
 .auth-page .login-side{display:flex;align-items:center;justify-content:center}
 .auth-page .form-side{display:flex;align-items:flex-start;justify-content:center}
 .auth-page .login-content{max-width:520px!important}
 .auth-page .form-content{max-width:560px!important;padding:0!important}
 .auth-page .auth-home{margin-bottom:20px;font-size:31px}
 .auth-page .form-title h1{font-size:34px!important;line-height:1!important}
 .auth-page .form-title p{display:none}
 .auth-page .signup-form{margin-top:15px!important;gap:10px}
 .auth-page .signup-form .field{height:50px;min-height:50px}
 .auth-page .signup-form .password-hint{display:none}
 .auth-page .signup-form .double-row:focus-within + .password-hint,
 .auth-page .signup-form .field:focus-within + .password-hint{display:block}
 .auth-page .signup-form .primary-btn{min-height:48px}
 .auth-page .signup-form .secondary-btn{margin-top:8px}
 .auth-page .login-title h1{font-size:clamp(38px,3.2vw,48px)!important}
 .auth-page .login-title p{max-width:430px!important;margin-top:12px!important}
 .auth-page .login-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px!important}
 .auth-page .login-form>.field,.auth-page .login-form>.form-error,.auth-page .login-form>.primary-btn{grid-column:1/-1}
 .auth-page .login-form>.secondary-btn,.auth-page .login-form>.install-login-btn{width:100%;min-width:0;margin:0}
 .auth-page .install-login-btn{min-height:54px;padding:8px 12px}
 .auth-page .auth-links{margin-top:17px}
 .auth-page .login-note{display:none}
}
@media(prefers-reduced-motion:reduce){.public-page *, .public-page *::before,.public-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
