@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}body{margin:0;color:#172b50;background:#f4f7fc;font:15px 'DM Sans',Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #7da5ff;outline-offset:4px}[hidden]{display:none!important}.access-layout{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.access-story{background:#102b64;color:white;padding:45px 8%;display:flex;flex-direction:column;position:relative;overflow:hidden}.access-story:after{content:'';position:absolute;width:530px;height:530px;border:1px solid #ffffff12;border-radius:50%;bottom:-260px;right:-170px;pointer-events:none;box-shadow:0 0 0 70px #ffffff03,0 0 0 140px #ffffff02}.access-brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-size:30px;letter-spacing:-1px;font-weight:700}.access-brand img{border:1px solid #ffffff40;border-radius:12px}.access-brand small{font-size:9px;letter-spacing:3px;display:block;margin-top:4px;color:#b8cbf4}.story-copy{margin:auto 0;padding:70px 0;max-width:440px;z-index:1}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}.story-copy>.eyebrow{color:#9fbcff}h1{font-size:clamp(42px,4.7vw,70px);line-height:1.07;letter-spacing:-2.7px;margin:25px 0}p{line-height:1.7}.story-copy>p:not(.eyebrow){font-size:17px;max-width:350px;color:#c1d1f2}.method-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.method-tags span{border:1px solid #ffffff25;border-radius:30px;padding:10px 14px;font-size:12px}.story-foot{font-size:12px;color:#9fb9e6;z-index:1}.access-form{padding:55px 8% 25px;display:flex;flex-direction:column;align-items:center;justify-content:center}.access-card{width:100%;max-width:440px}.access-card>.eyebrow{color:#2358de}h2{font-size:33px;letter-spacing:-1.1px;line-height:1.2;margin:14px 0}.subtitle{font-size:14px;color:#687b98;margin:0 0 28px}.account-tabs{display:flex;background:#e7edf8;border-radius:12px;padding:4px;margin:25px 0}.account-tabs button{flex:1;border:0;padding:12px 8px;background:transparent;border-radius:9px;color:#687b98;font-size:13px;font-weight:600}.account-tabs button[aria-pressed=true]{background:white;color:#2358de;box-shadow:0 2px 6px #102b640d}.access-primary{display:flex;align-items:center;justify-content:center;gap:22px;padding:16px 20px;min-height:52px;background:#2358de;border-radius:11px;color:white;text-decoration:none;font-size:14px;font-weight:600}.access-primary:hover{background:#1a49bf}.provider-note{font-size:11px;color:#687b98;margin:13px 0 20px}.access-secondary{min-height:44px;width:100%;border:1px solid #d7e1f2;background:transparent;border-radius:10px;color:#456696;font-size:12px}.identity-box{display:flex;align-items:center;gap:12px;background:white;border:1px solid #dce7f8;border-radius:12px;padding:15px;margin-bottom:15px}.identity-icon{color:#2358de;background:#edf3ff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.identity-box b{display:block;font-size:13px;overflow-wrap:anywhere}.identity-box div{min-width:0}.identity-box div span{display:block;font-size:11px;color:#687b98;overflow-wrap:anywhere;margin-top:4px}.access-notice{padding:16px 18px;border:1px solid #dce5f5;border-radius:12px;background:#edf3ff;margin:25px 0 20px;font-size:12px}.access-notice p{color:#60779d;margin:5px 0 0;font-size:11px}.access-benefits p{font-size:12px;color:#60779d;margin:10px 0}.access-benefits span{color:#2358de;margin-right:8px}.access-status{font-size:12px;color:#456696}.access-footer{font-size:10px;color:#8190a8;margin:35px 0 0;text-align:center}details{margin-top:22px;font-size:11px;color:#687b98}summary{cursor:pointer;color:#456696;padding:10px 0;min-height:40px}@media(max-width:850px){.access-story{padding:35px 7%}.access-form{padding:40px 7%}h2{font-size:28px}}@media(max-width:650px){.access-layout{grid-template-columns:1fr}.access-story{padding:calc(24px + env(safe-area-inset-top)) 25px 25px;min-height:180px}.access-brand{font-size:23px}.access-brand img{width:36px;height:36px}.story-copy{padding:25px 0 0;max-width:none}.story-copy h1{font-size:32px;letter-spacing:-1px;margin:10px 0}.story-copy h1 br{display:none}.story-copy>.eyebrow,.story-copy>p:not(.eyebrow),.method-tags,.story-foot{display:none}.access-form{padding:30px 24px calc(20px + env(safe-area-inset-bottom))}.access-card{max-width:460px}h2{font-size:28px}.account-tabs{margin-top:22px}.access-notice{margin-top:20px}.access-story:after{width:300px;height:300px;bottom:-190px}}

form label{display:block;margin:16px 0 7px;font-size:12px;color:#456696}form input{display:block;width:100%;padding:14px;border:1px solid #cfdaee;border-radius:10px;font:inherit;font-size:16px;background:white;color:#172b50}form .access-primary{border:0;width:100%;margin-top:22px;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}#forgot-password{margin-top:12px}#auth-status{font-size:12px;line-height:1.6;color:#456696}.identity-box>div{width:100%}.identity-box a,.identity-box button{margin-top:12px}

.language-choice{margin:20px 0}.language-choice select{display:block;width:100%;padding:14px;border:1px solid #cbd7eb;border-radius:12px;background:white;color:#172b50;font:inherit;margin-top:8px}
/* Patio andaluz account screens. */
body{background:#fbf8f1;color:#102c48}.access-story{background:linear-gradient(90deg,#fff8ebdc,#fff8eb35),url('/images/patio-hero.webp') 65% center/cover;color:#102c48}.access-story:after{display:none}.access-brand{width:48px;color:#103b5a}.access-brand svg{width:44px;height:44px}.story-copy h1{font-family:Georgia,serif;font-weight:700;letter-spacing:-1.7px;text-shadow:0 1px 12px #fff8ed80}.story-copy>p{max-width:390px}.story-foot{color:#345b73}.method-tags span{background:#fffaf0c9;border:1px solid #ddcfb7;color:#133b58}.access-card{background:#fffdfa;border-color:#e4d7c5;box-shadow:0 14px 42px #835e2810}.access-card h2{font-family:Georgia,serif;font-size:32px;font-weight:700;letter-spacing:-.8px}.access-primary{background:#065bdc}.access-notice{background:#f6efe2;border-color:#e4d8c4}.access-form{background:#fbf8f1}.account-tabs{background:#f0ebe1}.account-tabs button[aria-pressed=true]{background:#fffdfa;color:#065bdc}.access-card input,.language-choice select{border-color:#dbd6ce;background:#fffdfa}.access-footer{color:#677584}.access-secondary{color:#225b85}
@media(max-width:750px){.access-story{background-position:70% 58%;min-height:250px;padding:calc(25px + env(safe-area-inset-top)) 25px 25px}.story-copy h1{font-size:36px;max-width:280px}.access-brand{margin-bottom:20px}.access-card h2{font-size:29px}}

.access-brand{width:max-content;max-width:100%;display:flex;gap:16px;align-items:center;color:#103b5a}.access-brand svg{width:86px;height:48px;flex-shrink:0}.access-brand .brand-name{font:600 13px Arial,sans-serif;letter-spacing:2px;white-space:nowrap}@media(max-width:650px){.access-brand{gap:12px}.access-brand svg{width:70px;height:40px}.access-brand .brand-name{font-size:12px;letter-spacing:1.5px}}

/* Long German headings must wrap instead of being clipped on mobile. */
.access-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.access-story,.access-form,.story-copy,.access-card{min-width:0}.story-copy h1{max-width:100%;overflow-wrap:anywhere;hyphens:auto}.access-brand{flex-wrap:wrap}@media(max-width:650px){.access-layout{grid-template-columns:minmax(0,1fr)}.story-copy h1{font-size:clamp(27px,8.4vw,36px);line-height:1.15;max-width:100%;white-space:normal}.story-copy h1 br{display:block}.access-card h2{overflow-wrap:anywhere}}

.academy-languages{font-size:12px;color:#173e5d;letter-spacing:.2px;line-height:1.8;margin:10px 0 0}.language-choice>label,.language-choice #registration-base>label{display:block;margin-top:16px}#target-language{font-size:16px}#registration-base[hidden]{display:none!important}@media(max-width:650px){.academy-languages{font-size:11px;margin-top:0}}

/* Public access language: visible before sign-in and registration. */
.access-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;width:100%;position:relative;z-index:1}.access-topbar .access-brand{margin:0;flex-wrap:nowrap}.access-language-picker{display:grid;gap:1px;min-width:145px;max-width:100%;margin:0 0 0 auto;padding:8px 10px 3px;background:#fffefaed;border:1px solid #d5e0d9;border-radius:12px;color:#193c4d;box-shadow:0 4px 14px #173b4010;backdrop-filter:blur(8px)}.access-language-picker>span{font:600 10px Arial,sans-serif;letter-spacing:.6px;padding:0 3px;color:#466759}.access-language-picker select{font:16px Arial,sans-serif;color:#193c4d;background:transparent;border:0;min-height:40px;width:100%;cursor:pointer;padding:5px 0;appearance:auto}.access-language-picker select:focus-visible{outline:3px solid #79a58b;outline-offset:2px;border-radius:5px}.access-topbar+.academy-languages{margin-top:15px}@media(max-width:650px){.access-topbar{gap:12px}.access-topbar .access-brand{gap:9px}.access-topbar .access-brand svg{width:60px;height:36px}.access-topbar .access-brand .brand-name{font-size:10px;letter-spacing:1px}.access-language-picker{min-width:138px;padding:7px 8px 2px}.access-topbar+.academy-languages{margin-top:14px}}
