@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
*{box-sizing:border-box}body{margin:0}.pizza-login{font-family:'DM Sans',Arial,sans-serif;background:#260e0c;color:#fff4df;min-height:100vh;min-height:100svh}.photo-scene{position:fixed;inset:0;display:grid;grid-template-columns:28% 22% 50%;overflow:hidden;pointer-events:none}.photo{background-repeat:no-repeat;background-size:cover;filter:saturate(.75)}.photo-room{background-image:url('../images/pizzaria/pizza2.png');background-position:50% 50%}.photo-house{background-image:url('../images/pizzaria/pizza3.png');background-size:auto 300%;background-position:50% 0}.photo-pizza{background-image:url('../images/pizzaria/pizza1.png');background-position:55% 50%}.photo-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,10,8,.85),rgba(37,12,9,.58) 49%,rgba(26,9,7,.56)),linear-gradient(0deg,rgba(24,8,7,.75),transparent 45%,rgba(24,8,7,.28))}.login-layout{position:relative;min-height:100vh;min-height:100svh;max-width:1600px;margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:7%;padding:42px 6% 30px}.welcome-story{display:flex;flex-direction:column;min-width:0}.house-label{display:flex;align-items:center;gap:10px;letter-spacing:.17em;font-size:10px;font-weight:700;color:#fff2dc}.house-dot{height:7px;width:7px;background:#ffb44a;border-radius:50%;box-shadow:0 0 0 5px #ffb44a17}.story-copy{margin:auto 0;padding:65px 0}.story-kicker{font-size:10px;letter-spacing:.18em;font-weight:700;color:#edc19b}.story-copy h1{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.035em;font-size:clamp(45px,5.1vw,78px);line-height:1.07;margin:23px 0 28px}.story-copy h1 em{color:#ffba66;font-weight:600}.story-copy>p{font-size:15px;line-height:1.9;color:#dfcbbc;margin:0}.story-line{width:43px;height:2px;background:#cc5a3c;margin:31px 0 16px}.story-signature{font-size:12px;color:#f0d9c4;font-weight:500}.story-footer{display:flex;gap:15px;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:#bba292;line-height:1.6}.footer-number{white-space:nowrap;opacity:.8}.entry-area{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:12px 0}.entry-card{width:100%;max-width:430px;background:#fffaf2;color:#3a211a;border:1px solid #fff5e5;border-radius:20px;padding:27px 38px 25px;box-shadow:0 24px 90px #0c03098c;position:relative}.entry-card:before{content:'';position:absolute;top:-1px;left:34px;right:34px;height:3px;background:linear-gradient(90deg,#970c14,#eb2030,#f4b14c);border-radius:0 0 4px 4px}.logo-window{height:148px;width:210px;margin:0 auto 9px;overflow:hidden}.logo-window img{display:block;width:210px;height:210px;margin-top:-31px;mix-blend-mode:multiply}.card-divider{display:flex;gap:12px;align-items:center}.card-divider span{height:1px;background:#e7dacd;flex:1}.card-divider p{font-size:8px;letter-spacing:.16em;font-weight:700;color:#9c7865;white-space:nowrap;margin:0}.entry-heading{text-align:center;margin:26px 0}.entry-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:29px;letter-spacing:-.03em;line-height:1.2;font-weight:600;margin:0 0 10px}.entry-heading p{font-size:12px;line-height:1.7;color:#947768;margin:0}.entry-form{display:flex;flex-direction:column;gap:17px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field label{font-size:11px;font-weight:700;color:#624337}.form-field input{font:inherit;font-size:12px;width:100%;height:47px;padding:0 14px;border:1px solid #e4d6c7;border-radius:8px;background:#fffdf9;color:#39221a;outline:none;transition:border-color .15s,box-shadow .15s}.form-field input::placeholder{color:#b6a291}.form-field input:focus{border-color:#b92327;box-shadow:0 0 0 3px #bc252515}.form-field input[aria-invalid=true]{border-color:#bc2525}.remember{display:flex;align-items:center;gap:8px;font-size:11px;color:#8a6b59;cursor:pointer}.remember input{accent-color:#b31d22;width:15px;height:15px;margin:0}.enter-button{font:inherit;display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(110deg,#a9171e,#d12c28);border:0;border-radius:8px;color:#fff8ed;min-height:49px;padding:0 18px;font-size:12px;font-weight:700;box-shadow:0 5px 13px #ae1f201d;cursor:pointer;transition:filter .15s,transform .15s}.enter-button span:last-child{font-size:23px;font-weight:400}.enter-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.enter-button:focus-visible{outline:3px solid #eda54f;outline-offset:3px}.entry-note{display:flex;gap:7px;align-items:center;justify-content:center;color:#ad9583;font-size:10px;margin:21px 0 0}.entry-note svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5}.powered{text-align:center;font-size:11px;letter-spacing:.02em;color:#ead5c2;margin:22px 0 0}.powered span{display:block;font-size:8px;font-weight:700;letter-spacing:.2em;margin-top:9px;color:#ba9f8d}.login-error{font-size:12px;line-height:1.5;background:#f9e5df;color:#9b2723;border:1px solid #eed2c7;padding:11px 13px;border-radius:8px;margin:0 0 18px}@media(min-width:1500px){.login-layout{gap:12%}}@media(max-width:980px){.login-layout{gap:5%;padding:35px 4%}.story-copy h1{font-size:52px}.entry-card{padding:24px 28px}.footer-number{display:none}}@media(max-width:720px){.login-layout{display:block;padding:28px 20px 23px}.welcome-story{align-items:center;text-align:center}.house-label{font-size:8px}.story-copy{padding:27px 0 22px}.story-kicker,.story-copy>p,.story-line,.story-signature,.story-footer{display:none}.story-copy h1{font-size:36px;margin:0;line-height:1.12}.story-copy h1 br:nth-of-type(2){display:none}.entry-area{padding:0}.entry-card{max-width:410px;padding:20px 27px 24px}.logo-window{height:125px;width:185px;margin-bottom:6px}.logo-window img{width:185px;height:185px;margin-top:-28px}.entry-heading{margin:23px 0}.entry-heading h2{font-size:27px}.photo-scene{grid-template-columns:30% 25% 45%}.photo-scene:after{background:linear-gradient(0deg,#210b0bee,#210b0b8c 65%,#210b0bb8)}.powered{margin-top:20px}.entry-form{gap:16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
