:root{color-scheme:light;--brown:#382512;--ink:#352716;--muted:#736856;--gold:#be9463;--line:#ded7cd;--paper:#fff;--soft:#f8f5f0;--error:#a02222;font-family:Arial,Helvetica,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}a{color:inherit;text-underline-offset:4px}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #aa6a2b;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed}button,input{border-radius:8px}.skip-link{position:absolute;left:1rem;top:-5rem;background:white;padding:1rem;z-index:10}.skip-link:focus{top:1rem}.welcome-shell{min-height:100svh;display:grid;grid-template-columns:minmax(320px,.88fr) minmax(540px,1.12fr)}.brand-panel{background:radial-gradient(ellipse at 40% 25%,#503923,var(--brown) 68%);color:white;padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;align-items:center;text-align:center;position:sticky;top:0;height:100svh;min-height:600px;justify-content:center}.brand-logo-link{display:block;width:min(72%,310px)}.brand-logo{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}.brand-copy{margin-top:2.8rem}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.22em;line-height:1.7;color:#ddbc91;margin:0 0 1.2rem}.brand-copy h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2.6rem,4.6vw,4.7rem);line-height:1.03;letter-spacing:-.035em;margin:0 0 1.6rem}.brand-copy>p:last-child{font-size:1rem;line-height:1.65;color:#e0cfb9;margin:0}.brand-address{position:absolute;bottom:2rem;font-size:.8125rem;letter-spacing:.04em;color:#c7b094}.content-panel{padding:1.65rem clamp(1.4rem,4.7vw,5rem) 1.75rem;display:flex;flex-direction:column;align-items:center}.preview-banner{max-width:470px;width:100%;padding:.75rem 1rem;background:var(--soft);border:1px solid var(--line);border-radius:8px;color:#66553e;display:flex;gap:1rem;align-items:center;margin:0 0 2rem}.preview-banner>span{font-size:.6875rem;letter-spacing:.1em;font-weight:700;line-height:1.5;flex-basis:65px;flex-shrink:0}.preview-banner p{font-size:.8125rem;line-height:1.45;margin:0}.form-card{width:100%;max-width:470px}.stepper{display:flex;align-items:center;gap:1.05rem;margin-bottom:2.8rem}.step{display:flex;gap:.6rem;align-items:center;font-size:.875rem;color:#827767;white-space:nowrap}.step b{height:1.8rem;width:1.8rem;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:.6875rem}.step.active{color:var(--ink);font-weight:700}.step.active b{color:white;background:var(--brown);border-color:var(--brown)}.step-line{height:1px;background:var(--line);flex:1;max-width:6rem}.small-eyebrow{color:#9a6b39;letter-spacing:.16em;font-size:.6875rem;margin-bottom:.6rem}h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,3vw,2.8rem);line-height:1.09;font-weight:400;letter-spacing:-.025em;margin:0 0 1rem}.form-intro{margin:0 0 1.75rem;font-size:1rem;line-height:1.55;color:var(--muted);max-width:390px}.field{margin-bottom:1.2rem}.field label{display:block;font-size:.875rem;font-weight:700;margin-bottom:.6rem}.field label span{font-size:.8125rem;font-weight:400;color:var(--muted);margin-left:.3rem}.field input{width:100%;height:52px;border:1px solid #cec4b5;padding:0 .95rem;background:#fff;color:var(--ink)}.field input::placeholder{color:#9b9184}.field input[aria-invalid="true"]{border-color:var(--error);background:#fffafa}.field-error{font-size:.875rem;color:var(--error);margin:.5rem 0 0;line-height:1.45}.consent-box{margin:1.6rem 0 1.15rem;border-top:1px solid var(--line);padding-top:1.25rem}.checkbox-row{display:flex;gap:.75rem;align-items:flex-start;cursor:pointer}.checkbox-row input{appearance:auto;accent-color:var(--brown);height:20px;width:20px;margin:0;flex-shrink:0}.checkbox-row>span{font-size:.875rem;line-height:1.4;font-weight:700}.checkbox-row small{display:inline;font-size:.8125rem;font-weight:400;color:var(--muted);margin-left:.45rem}.consent-disclosure{font-size:.875rem;line-height:1.5;color:#736653;margin:.7rem 0 .6rem 2rem}.consent-links{display:flex;align-items:center;gap:.6rem;font-size:.875rem;margin:.5rem 0 0 2rem}.draft-label{font-size:.75rem;padding:.1rem .4rem;border:1px solid var(--line);border-radius:4px;color:var(--muted)}.terms-note{font-size:.8125rem;line-height:1.5;color:var(--muted);margin:1.2rem 0}.primary-button{border:1px solid var(--brown);color:white;background:var(--brown);width:100%;min-height:54px;font-size:1rem;font-weight:700;padding:.85rem 1rem;transition:background .15s}.primary-button:hover{background:#594027}.primary-button:disabled{opacity:.5}.staff-help{font-size:.8125rem;line-height:1.5;color:var(--muted);margin:1rem 0 0;text-align:center}.footer-links{width:100%;max-width:470px;display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center;font-size:.875rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.footer-links span{color:var(--gold)}.back-to-romeo{font-size:.75rem;margin-top:1.2rem;color:var(--muted)}[hidden]{display:none!important}.wifi-icon{width:60px;height:60px;background:var(--soft);display:grid;place-items:center;border-radius:50%;margin-bottom:1.3rem;color:var(--brown)}.wifi-icon svg{height:32px;width:32px}.network-card{padding:1.5rem;background:var(--soft);border:1px solid var(--line);border-radius:10px}.network-label{font-size:.6875rem;font-weight:700;letter-spacing:.14em;color:var(--muted);margin:0 0 .5rem}.network-value{font-family:Georgia,serif;font-size:1.4rem;margin:0;color:#756653}.network-card hr{border:0;border-top:1px solid var(--line);margin:1.3rem 0}.wifi-actions{display:flex;gap:.65rem;margin-top:1.2rem}.wifi-actions button{flex:1;border:1px solid #d8cdbd;padding:.7rem .5rem;font-size:.875rem;background:transparent;color:#8a7d6c}.state-note{font-size:.875rem;line-height:1.5;padding:.85rem 1rem;border-left:3px solid var(--gold);background:var(--soft);margin:1.3rem 0;color:#66553e}.connection-note{font-size:.875rem;line-height:1.5;color:var(--muted)}.secondary-button{width:100%;min-height:48px;border:1px solid var(--brown);background:white;color:var(--brown);font-weight:700;margin-top:1rem}.policy-page{background:var(--soft)}.policy-header{background:var(--brown);color:white;padding:1.5rem max(1.3rem,calc((100vw - 780px)/2));display:flex;align-items:center;justify-content:space-between;gap:2rem}.policy-header img{width:88px;height:auto;filter:brightness(0) invert(1)}.policy-header a{font-size:.875rem}.policy-content{max-width:780px;margin:2rem auto 4rem;padding:0 1.3rem;line-height:1.7}.policy-content h1{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1.1;margin-bottom:1rem}.policy-content h2{font-size:1.8rem;line-height:1.3;margin:2.5rem 0 1rem}.policy-content h3{font-size:1rem;margin:1.7rem 0 .5rem}.policy-content p,.policy-content li{font-size:1rem;color:#665a49}.policy-content .preview-banner{max-width:none}.policy-nav{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem;border-bottom:1px solid var(--line);padding-bottom:1.5rem}.policy-content section{scroll-margin-top:1.5rem}.review-note{padding:1rem 1.3rem;background:#fff;border:1px solid var(--line);border-radius:8px}.review-note strong{color:var(--brown)}@media(min-width:1500px){.content-panel{justify-content:center}.preview-banner{margin-top:1rem}}@media(max-width:900px){.welcome-shell{grid-template-columns:1fr}.brand-panel{height:auto;min-height:0;position:relative;padding:2rem 1.3rem 1.8rem;display:grid;grid-template-columns:110px 1fr;gap:1.3rem;text-align:left;justify-items:start}.brand-logo-link{width:110px}.brand-copy{margin:0}.brand-copy .eyebrow{font-size:.625rem;letter-spacing:.16em;max-width:210px;margin-bottom:.5rem}.brand-copy h1{font-size:2rem;margin:0;line-height:1.08}.brand-copy h1 br{display:none}.brand-copy>p:last-child{display:none}.brand-address{display:none}.content-panel{padding:1.3rem 1.3rem 1.75rem}.preview-banner{margin-bottom:1.6rem}.stepper{margin-bottom:1.8rem}h2{font-size:2.5rem}.form-intro{margin-bottom:1.5rem}.small-eyebrow{font-size:.6875rem}}@media(max-width:390px){.brand-panel{grid-template-columns:85px 1fr;gap:1rem}.brand-logo-link{width:85px}.brand-copy h1{font-size:1.8rem}.brand-copy .eyebrow{font-size:.625rem}.content-panel{padding-left:1.1rem;padding-right:1.1rem}.checkbox-row small{display:block;margin-left:0}.consent-links{gap:.45rem;flex-wrap:wrap}.field label span{display:block;margin:.35rem 0 0}h2{font-size:2.2rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important}}
/* Language and consent refinements */
.brand-copy h1{max-width:430px}.brand-copy>p:last-child{max-width:280px;margin-left:auto;margin-right:auto}.language-tools{width:100%;max-width:470px;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem .75rem;margin-bottom:2.1rem}.language-label{font-size:.8125rem;color:var(--muted)}.language-tools select{font:inherit;font-size:.875rem;color:var(--ink);background:white;border:1px solid var(--line);border-radius:6px;padding:.5rem 2rem .5rem .7rem;max-width:190px;min-height:40px}.translation-help{flex-basis:100%;font-size:.8125rem;text-align:right;color:var(--muted)}.translation-help summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.translation-help p{font-size:.8125rem;line-height:1.5;margin:.6rem 0 0;text-align:left;padding:.7rem;background:var(--soft);border-radius:6px}.field label>span:first-child{font-size:.875rem;font-weight:700;margin-left:0;color:var(--ink)}.field label .country-code{margin-left:.35rem}.terms-acceptance{border-top:1px solid var(--line);padding-top:1.25rem;margin-top:1.5rem}.checkbox-row .terms-explanation{display:block;margin:.5rem 0 0;font-size:.875rem;font-weight:400;line-height:1.5}.terms-acceptance .consent-links{flex-wrap:wrap}.consent-box{margin:1.25rem 0 1.3rem}.consent-disclosure{font-size:.875rem}.enrollment-note{margin:.8rem 0 0 2rem;font-size:.8125rem;line-height:1.5;color:var(--muted)}.password-help{font-size:1rem;line-height:1.5;margin:0;color:var(--ink)}.policy-content .language-tools{max-width:none;margin-bottom:2rem}.policy-date{font-size:.8125rem!important;border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem}.form-intro,#form-title{max-width:440px}.brand-panel{min-height:620px}.step{white-space:normal}.consent-links{flex-wrap:wrap}.policy-header{padding-top:1rem;padding-bottom:1rem}@media(max-width:900px){.brand-panel{min-height:0}.language-tools{margin-bottom:1.5rem}.brand-copy h1{max-width:none}.translation-help{font-size:.8125rem}}@media(max-width:390px){.field label .country-code{margin-left:0}}
.password-output{width:100%;max-width:100%;background:transparent;border:0;color:var(--ink);font-size:1rem;padding:.25rem 0;font-family:monospace;letter-spacing:.04em}.wifi-actions button:not(:disabled){background:white;color:var(--brown);cursor:pointer}.settings-content{max-width:620px}.settings-content form{background:white;padding:1.5rem;border:1px solid var(--line);border-radius:10px;margin:1.5rem 0}.settings-content .staff-help{text-align:left}.settings-content .primary-button{margin-top:.7rem}
/* Branded entry, followed by the existing details and Wi-Fi steps. */
.intro-screen{min-height:100svh;background:radial-gradient(ellipse at 45% 30%,#513a25 0%,#382512 66%,#2b1c10 100%);color:white;display:grid;place-items:center;padding:3rem 1.5rem;overflow:hidden}.intro-content{width:100%;max-width:640px;display:flex;flex-direction:column;align-items:center;text-align:center}.intro-logo{width:clamp(215px,40vw,355px);max-width:80vw;height:auto;filter:brightness(0) invert(1);display:block}.intro-eyebrow{margin:2rem 0 0;font-size:.75rem;color:#ddbc91;letter-spacing:.24em}.intro-connect{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:58px;max-width:100%;margin-top:clamp(3rem,10vh,6rem);padding:1rem 1.45rem;border:1px solid #b68e60;border-radius:999px;background:#2b1c10;color:white;font-size:.9375rem;font-weight:600;letter-spacing:.08em;line-height:1.5;box-shadow:0 0 26px #d3a46b20}.intro-connect svg{width:24px;height:24px;flex:none;color:#ebcda7}.intro-connect:hover{background:#4b3420;border-color:#e1bd90}.intro-connect:focus-visible{outline:3px solid #f3d3aa;outline-offset:7px}.intro-connect:disabled{opacity:.55}.intro-noscript{max-width:360px;font-size:.875rem;color:#ddcbb5;line-height:1.5;margin-top:1.5rem}@media(max-width:600px){.intro-screen{padding:2rem 1.35rem}.intro-logo{width:min(68vw,310px)}.intro-eyebrow{max-width:290px;font-size:.6875rem;letter-spacing:.18em;line-height:1.8}.intro-connect{margin-top:4rem;font-size:.9375rem;letter-spacing:.04em;gap:1rem}}@media(max-height:520px) and (min-width:700px){.intro-screen{padding:1.5rem}.intro-logo{width:170px}.intro-eyebrow{margin-top:.8rem}.intro-connect{margin-top:1.2rem;min-height:48px;padding:.65rem 1.2rem}}
.intro-screen{position:relative}.intro-language-tools{position:absolute;inset-block-start:1.5rem;inset-inline-end:1.5rem;display:flex;align-items:center;gap:.65rem;color:#e4cfb3;font-size:.8125rem}.intro-language-tools select{font:inherit;min-height:40px;padding:.5rem .65rem;background:#382512;color:white;border:1px solid #806347;border-radius:6px;max-width:150px}.intro-language-tools select:focus-visible{outline:3px solid #f3d3aa;outline-offset:3px}.intro-screen{padding-top:5.5rem;padding-bottom:3rem}@media(max-width:600px){.intro-language-tools{inset-block-start:1rem;inset-inline-end:1rem}.intro-screen{padding-top:5rem}}@media(max-height:520px) and (min-width:700px){.intro-screen{padding-top:1.5rem}.intro-language-tools{inset-block-start:1rem}}

.guest-fields{border:0;padding:0;margin:0;min-width:0}

.manual-retention{margin:2rem 0;padding-top:1.5rem;border-top:1px solid #d8cbbc}.manual-retention button{margin-top:1rem}.manual-retention .checkbox-row{margin:1.2rem 0}
