:root{--ink:#2d4c12;--quiet:#93a582;--blue:#85e62c;--font:-apple-system,BlinkMacSystemFont,'Segoe UI Variable Display','Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{min-height:100%;background:#fbfef8}body{margin:0;min-height:100dvh;display:flex;flex-direction:column;color:var(--ink);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}svg{display:block}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a0f84f;outline-offset:5px}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:white;z-index:20}.skip:focus{top:12px}
.atmosphere{position:fixed;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(135deg,#f9fff4,#fdfdfc 48%,#f7faf3)}.cloud{position:absolute;border-radius:50%;filter:blur(65px);animation:drift 22s ease-in-out infinite alternate;opacity:.5}.cloud.one{width:640px;height:480px;left:-230px;top:-180px;background:#e1facb}.cloud.two{width:520px;height:400px;right:-220px;bottom:-150px;background:#d4e7be;animation-delay:-8s}.cloud.three{width:370px;height:370px;right:10%;top:15%;background:#e7fada;opacity:.17;animation-delay:-16s}.horizon{position:absolute;width:135vw;height:50vw;min-height:550px;left:-17vw;top:30%;border-radius:50%;border-top:1px solid #fff;transform:rotate(-12deg);background:linear-gradient(180deg,#ffffff5c,transparent 47%);box-shadow:0 -25px 90px #f2fee73b;opacity:.8}.horizon:after{content:'';position:absolute;inset:23px -10px;border-top:1px solid #e1eed444;border-radius:50%}
header{width:min(1320px,calc(100% - 88px));height:100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.monogram{display:flex;align-items:center;gap:12px}.monogram svg{width:34px;height:38px;filter:drop-shadow(0 4px 6px #72aa3e18)}.monogram span{font-size:9px;font-weight:600;letter-spacing:2px;color:#879a75}
main{flex:1;width:min(1120px,calc(100% - 88px));margin:0 auto;position:relative}.hero{text-align:center;padding:54px 0 37px;perspective:1100px;position:relative}.eyebrow{font-size:8px;letter-spacing:3.5px;color:#9daf8c;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px;animation:quietIn 1s both .45s}.eyebrow i{width:4px;height:4px;border-radius:50%;background:#96b475;box-shadow:0 0 0 5px #99bb730b}h1{font-size:clamp(48px,7.9vw,112px);font-weight:740;line-height:1.15;letter-spacing:-5.8px;margin:26px -15px 21px;transform-origin:50% 55%;animation:arrive 1.85s cubic-bezier(.16,1,.3,1) both;position:relative;z-index:1}h1 span{background:linear-gradient(112deg,#305113 12%,#3d611b 48%,#77a844 83%,#88ad5f);background-clip:text;-webkit-background-clip:text;color:transparent}h1:after{content:'';height:1px;width:70px;background:linear-gradient(90deg,transparent,#c2dca9,transparent);position:absolute;left:calc(50% - 35px);bottom:-21px;animation:quietIn 1.2s both 1.3s}.hero p{font-size:16px;line-height:1.9;font-weight:400;letter-spacing:.1px;color:#7e9768;margin:38px 0 0;animation:quietIn 1s both .95s}.hero p span{color:#aebca1}.coordinates{font-size:8px;letter-spacing:2.5px;color:#afbfa1;margin-top:23px;animation:quietIn 1s both 1.2s}
.glass-orbit{position:absolute;width:200px;height:200px;left:-85px;top:27px;border-radius:50%;border:1px solid #ffffffde;background:linear-gradient(140deg,#fff9,#ffffff09);box-shadow:inset 3px 4px 7px #fff9,inset -6px -9px 20px #c5e1aa17,0 20px 60px #84b3590a;backdrop-filter:blur(4px);z-index:0;animation:float 10s ease-in-out infinite;pointer-events:none;opacity:.58}.glass-orbit:before{content:'';position:absolute;inset:13px;border:1px solid #ffffffa3;border-radius:50%}.glass-orbit.small{width:78px;height:78px;left:auto;right:-20px;top:168px;animation-delay:-4s;opacity:.7}.glint{position:absolute;width:5px;height:5px;background:#c5ddaa;border-radius:50%;right:160px;top:37px;box-shadow:0 0 20px #92bf6044;animation:float 7s infinite ease-in-out}
.destinations{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:940px;margin:18px auto 0;perspective:1200px}.destination{display:flex;flex-direction:column;position:relative;isolation:isolate;min-height:234px;padding:25px 30px 23px;border-radius:27px;border:1px solid #ffffffee;background:linear-gradient(128deg,#ffffffbd,#ffffff73);box-shadow:inset 0 1px 0 #fff,0 15px 48px #44672406,0 1px 3px #58793904;backdrop-filter:blur(26px) saturate(135%);transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:box-shadow .4s,background .4s,transform .45s cubic-bezier(.2,.8,.2,1),border-color .3s;animation:cardsIn 1s both 1.2s;overflow:hidden}.destination:nth-child(2){animation-delay:1.4s}.destination:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(300px circle at var(--mx,0%) var(--my,0%),var(--glow,#cbfb9e26),transparent 75%);opacity:0;transition:opacity .4s}.destination:after{content:'';position:absolute;left:30px;right:30px;top:0;height:1px;background:linear-gradient(90deg,transparent,#c3f09a,transparent);opacity:.6}.destination.physio{--glow:#abd87433}.destination.physio:after{background:linear-gradient(90deg,transparent,#a8c980,transparent)}.destination:hover{background:#ffffffbc;box-shadow:inset 0 1px 0 #fff,0 22px 55px #4467240d;border-color:#fff}.destination:hover:before{opacity:1}.card-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.card-label{font-size:8px;font-weight:650;letter-spacing:2px;color:#9cae8b}.card-label .number{color:#c5d7b5;margin-right:10px}.external{color:#bac9ac;width:14px;height:14px}.card-body{display:flex;align-items:center;gap:18px;margin:13px 0 16px}.card-body img{width:90px;height:90px;margin-left:-11px;filter:drop-shadow(0 4px 5px #476e2305);transition:transform .5s cubic-bezier(.2,.8,.2,1)}.destination:hover .card-body img{transform:translateY(-4px) rotate(-5deg)}.card-copy p{font-size:11px;color:#a3b394;margin:0 0 5px}.card-copy h2{font-size:28px;font-weight:650;letter-spacing:-1.1px;margin:0;line-height:1.2}.card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e5eedd80;margin-top:auto;padding-top:16px;gap:18px}.card-bottom span{font-size:10px;letter-spacing:.2px;color:#9eb28c}.arrow-disc{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;border:1px solid #ecf7e1;background:linear-gradient(145deg,#fdfffb,#f2fee6);box-shadow:inset 0 1px 0 #fff;color:#9ac96e;transition:transform .3s}.physio .arrow-disc{border-color:#e6eddd;background:linear-gradient(145deg,#fff,#edf5e3);color:#8ba66a}.destination:hover .arrow-disc{transform:translateX(3px)}.destination:focus-visible{outline-offset:7px}.whisper{text-align:center;font-size:10px;letter-spacing:1px;color:#b0bfa3;margin:29px 0 35px;animation:quietIn 1s both 1.7s}.whisper span{display:inline-block;width:16px;height:1px;background:#d5e2c9;vertical-align:middle;margin:0 12px}
footer{display:flex;justify-content:space-between;align-items:center;width:min(1320px,calc(100% - 88px));margin:0 auto;padding:24px 0 26px;gap:25px;color:#b0bda5;font-size:9px;border-top:1px solid #e7efe050}.footer-links{display:flex;align-items:center;gap:24px}.footer-links a:hover{color:#769a55}.login-link{display:flex;align-items:center;gap:6px;font-size:9px;letter-spacing:.2px;color:#acba9f;transition:color .3s}.login-link:hover{color:#6e9a43}.login-link svg{width:11px;height:11px}.footer-divider{height:10px;width:1px;background:#e4ecdc}
/* Only shown after the discreet sign-in link is chosen. This remains a local mockup. */
.remember input{accent-color:#85e72a;margin:2px 0 0}.demo-note{text-align:center;font-size:9px;color:#b0bea3;margin:17px 0 0}.demo-message{font-size:11px;color:#7ba355;padding:11px;background:#f3fbeb;border-radius:10px;margin-top:17px;line-height:1.6}
@keyframes arrive{0%{opacity:0;transform:translate3d(0,50px,-500px) rotateX(24deg) scale(1.3);filter:blur(20px);letter-spacing:7px}55%{opacity:1;filter:blur(0)}100%{opacity:1;transform:translate3d(0,0,0) rotateX(0) scale(1);filter:blur(0)}}
@keyframes quietIn{from{opacity:0;transform:translateY(10px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes cardsIn{from{opacity:0;translate:0 25px;filter:blur(7px)}to{opacity:1;translate:0 0;filter:blur(0)}}
@keyframes drift{to{translate:60px 50px;scale:1.1}}@keyframes float{50%{translate:0 -13px;rotate:8deg}}
@media(min-width:1500px){.hero{padding-top:80px}.destinations{margin-top:30px}.whisper{margin-top:38px;margin-bottom:60px}}
@media(min-width:800px) and (max-height:750px){header{height:80px}.hero{padding-top:26px;padding-bottom:22px}h1{font-size:clamp(48px,7.8vw,104px);margin-top:20px;margin-bottom:16px}.hero p{font-size:14px;margin-top:29px}.coordinates{margin-top:16px}.destinations{margin-top:10px}.destination{min-height:215px;padding-top:21px;padding-bottom:20px}.card-body{margin:10px 0 14px}.card-body img{width:79px;height:79px}.whisper{margin:23px 0 26px}footer{padding:20px 0}}
@media(max-width:1000px){header,footer{width:calc(100% - 52px)}main{width:calc(100% - 64px)}h1{letter-spacing:-4px}.destinations{gap:18px}.destination{padding:23px 23px 20px}.card-body{gap:10px}.card-body img{width:80px;height:80px}.card-copy h2{font-size:24px}.glass-orbit{left:-95px;width:160px;height:160px}.glass-orbit.small{right:-10px;width:60px;height:60px}.monogram span{font-size:8px}.hero{padding-top:48px}}
@media(max-width:700px){header{height:80px;width:calc(100% - 40px)}.monogram span{letter-spacing:1.6px;font-size:8px}main{width:calc(100% - 40px)}.hero{padding:45px 0 33px}.eyebrow{font-size:7px;letter-spacing:2.8px}h1{font-size:clamp(34px,8.9vw,62px);letter-spacing:-2.2px;margin:27px -4px 25px;line-height:1.2}.hero p{font-size:13px;line-height:1.9;margin-top:33px}.coordinates{font-size:7px;letter-spacing:2px;margin-top:19px}.glass-orbit{width:106px;height:106px;left:-65px;top:50px;opacity:.6}.glass-orbit.small{width:48px;height:48px;right:-9px;top:187px;opacity:.5}.glint{right:24px;top:18px;width:3px;height:3px}.destinations{grid-template-columns:1fr;gap:16px;margin-top:5px;max-width:450px}.destination{min-height:0;padding:21px 23px 18px;border-radius:23px}.card-body{margin:10px 0 14px;gap:15px}.card-body img{width:82px;height:82px}.card-copy h2{font-size:25px}.card-copy p{font-size:10px}.card-label{font-size:7px;letter-spacing:1.7px}.card-bottom{padding-top:12px}.card-bottom span{font-size:9px}.arrow-disc{width:25px;height:25px}.whisper{font-size:9px;letter-spacing:.5px;margin:26px 0 30px}.whisper span{width:10px;margin:0 9px}footer{width:calc(100% - 40px);padding:21px 0 24px;flex-wrap:wrap;font-size:8px;gap:17px}.footer-links{gap:15px;font-size:8px}.login-link{font-size:8px}.hero h1{transform-origin:center}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.destination{transform:none!important}.cloud{opacity:.35}}

/* Sonnengrün: retain the glass surfaces and the original Physio wordmark. */
:root{--ink:#254019;--quiet:#7b8b6e;--blue:#7ab51d}
.atmosphere{background:linear-gradient(135deg,#f2f8e9,#fffffc 49%,#f1f7e8)}
.cloud.one{background:#d7edaa;opacity:.65}.cloud.two{background:#c3e89b;opacity:.57}.cloud.three{background:#f2edb5;opacity:.34}
h1 span{background:linear-gradient(110deg,#24431b 10%,#385e1e 47%,#70a52b 81%,#96be40);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero p{color:#758168}.hero p span{color:#89977b}
.header-emblem{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#fff,#f0f7e2);border:1px solid white;box-shadow:inset 0 1px 0 #fff,0 5px 17px #4c741912}
.monogram .header-emblem img{display:block;width:31px;height:31px;object-fit:contain;filter:drop-shadow(0 2px 1px #486e1812)}
.insurance-emblem{display:grid;place-items:center;width:78px;height:78px;margin:0 8px 0 -2px;flex-shrink:0;border:1px solid #fff;border-radius:22px;background:linear-gradient(145deg,#faffed,#e6f3cc);box-shadow:inset 1px 1px 2px #fff,0 7px 17px #4c74190e;transform:rotate(-6deg);transition:transform .4s}
.card-body .insurance-emblem img{width:59px;height:59px;margin:0;filter:drop-shadow(1px 3px 1px #34570f18)}
.destination:hover .insurance-emblem{transform:rotate(-10deg) translateY(-3px)}
.destination.insurance{background:linear-gradient(135deg,#ffffffbd,#f9ffefb3);--glow:#c6ee772e}
.destination.physio{background:linear-gradient(130deg,#335b28ed,#234c29ed 55%,#386638eb);border-color:#ffffffb0;--glow:#c0ed7240;box-shadow:inset 0 1px 0 #ffffff45,0 15px 48px #304f1c16}
.destination.physio:hover{background:linear-gradient(130deg,#3d692fed,#2b572bed 55%,#40723aeb);box-shadow:inset 0 1px 0 #ffffff60,0 22px 55px #304f1c24}
.physio .card-label,.physio .external{color:#d3e5cb}.physio .card-label .number{color:#a3bd92}
.physio .card-bottom{border-color:#e5f5d82b}.physio .card-bottom span{color:#d1e1c7}
.physio .arrow-disc{background:linear-gradient(135deg,#ffffff27,#d0edba18);border-color:#e0f1d440;box-shadow:inset 0 1px 0 #ffffff30;color:#e9f7e1}
.card-body.physio-brand{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin:14px 0 17px}
.physio-brand p{font-size:10px;color:#d1e2c7;margin:0}
.card-body.physio-brand img{display:block;width:min(285px,100%);max-width:100%;height:70px;margin:0;object-fit:contain;object-position:left center;filter:none}
.physio:hover .physio-brand img{transform:translateY(-2px)}

.remember input{accent-color:#7ab51d}
@media(min-width:800px) and (max-height:750px){.insurance-emblem{width:69px;height:69px}.card-body .insurance-emblem img{width:53px;height:53px}.card-body.physio-brand{margin-top:10px;margin-bottom:12px}.card-body.physio-brand img{height:63px}}
@media(max-width:1000px){.insurance-emblem{width:68px;height:68px;margin-right:6px}.card-body .insurance-emblem img{width:53px;height:53px}.card-body.physio-brand img{height:66px}}
@media(max-width:700px){.header-emblem{width:38px;height:38px;border-radius:12px}.monogram .header-emblem img{width:28px;height:28px}.insurance-emblem{width:72px;height:72px}.card-body .insurance-emblem img{width:56px;height:56px}.card-body.physio-brand{margin:14px 0 15px}.card-body.physio-brand img{height:68px;width:min(285px,100%)}}


/* Fassung 04: the whole landing fits the actual browser viewport. */
html{height:100%;min-height:0;overflow:hidden}
body{height:100dvh;min-height:0;display:grid;grid-template-rows:clamp(52px,10dvh,88px) minmax(0,1fr) clamp(36px,7dvh,58px);overflow:hidden}
header{width:min(1320px,calc(100% - 64px));height:100%;min-height:0;flex-shrink:0}
main{width:min(1120px,calc(100% - 64px));height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:clamp(8px,1.5dvh,18px);padding:0 0 clamp(8px,1.5dvh,16px);margin:0 auto;align-content:center}
.hero{padding:clamp(8px,1.8dvh,22px) 0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
h1{font-size:min(7.9vw,13dvh,108px);letter-spacing:-.052em;line-height:1.12;margin:clamp(8px,2.2dvh,24px) -4px clamp(8px,1.8dvh,18px);white-space:nowrap}
h1:after{bottom:-8px}
.hero p{font-size:clamp(12px,1.85dvh,16px);line-height:1.7;margin:clamp(10px,2.2dvh,23px) 0 0;color:#687c50}
.hero p span{color:#7b8b68}.coordinates{font-size:8px;letter-spacing:2.2px;margin-top:clamp(9px,1.9dvh,20px);color:#8b9e73}
.eyebrow{font-size:8px;color:#78915c}
.destinations{height:clamp(155px,29dvh,242px);width:100%;max-width:940px;gap:clamp(16px,2vw,26px);margin:0 auto;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr))}
.destination,.destination.insurance,.destination.physio{min-height:0;height:100%;padding:clamp(14px,2.8dvh,25px) clamp(18px,2.4vw,30px) clamp(12px,2.3dvh,23px);border:1px solid #ffffffec;border-radius:25px;background:linear-gradient(135deg,#ffffffcb,#fafff0a6);box-shadow:inset 0 1px 0 white,0 14px 40px #4a78170a;--glow:#b6ef4738}
.destination:hover,.destination.insurance:hover,.destination.physio:hover{background:linear-gradient(135deg,#fffffff0,#f6ffe1cf);box-shadow:inset 0 1px 0 white,0 18px 48px #4a781711}
.card-top{flex-shrink:0}.card-label,.physio .card-label{font-size:8px;letter-spacing:1.6px;color:#7b9065}.card-label .number,.physio .card-label .number{color:#a7bf87}
.external,.physio .external{color:#9eb782}
.card-body{flex:1;min-height:0;gap:18px;margin:6px 0 9px;align-items:center}
.insurance-emblem{width:clamp(48px,9dvh,78px);height:clamp(48px,9dvh,78px);margin:0 7px 0 -2px;background:linear-gradient(145deg,#faffed,#e6f5c5);border-radius:20px}
.card-body .insurance-emblem img{width:76%;height:76%;margin:0}
.card-copy p{font-size:clamp(9px,1.4dvh,11px);margin-bottom:5px;color:#819469}
.card-copy h2{font-size:clamp(20px,2.2vw,28px);letter-spacing:-.85px}
.card-body.physio-brand{flex:1;min-height:0;justify-content:center;align-items:flex-start;gap:5px;margin:6px 0 9px}
.physio-brand p{font-size:clamp(9px,1.4dvh,11px);color:#819469;margin:0}
.card-body.physio-brand img{width:min(285px,100%);height:clamp(37px,8.5dvh,70px);max-height:72%;object-fit:contain;object-position:left center;margin:0;filter:brightness(0);opacity:.7}
.card-bottom,.physio .card-bottom{flex-shrink:0;border-color:#9abd6436;margin-top:0;padding-top:clamp(8px,1.7dvh,15px);gap:12px}
.card-bottom span,.physio .card-bottom span{font-size:10px;color:#849b67}
.arrow-disc,.physio .arrow-disc{width:27px;height:27px;background:linear-gradient(135deg,#fff,#eaf8d1);color:#7ba23a;border:1px solid #dcebc7;box-shadow:inset 0 1px 0 white}
.whisper{font-size:9px;letter-spacing:.6px;margin:0;line-height:18px;color:#8da474}
footer{height:100%;min-height:0;width:min(1320px,calc(100% - 64px));margin:0 auto;padding:0;flex-wrap:nowrap;gap:14px;font-size:9px;color:#8da373;border-color:#a5c87325}
.footer-links{gap:22px}.login-link{font-size:9px;color:#869d70}
.monogram span{color:#779158}
.atmosphere{background:linear-gradient(125deg,#f3fce4 0%,#fcfff5 45%,#eff9dc 100%)}
.cloud.one{background:#b9ef36;opacity:.62;width:60vw;height:65dvh;left:-23vw;top:-28dvh;filter:blur(75px)}
.cloud.two{background:#80d846;opacity:.41;width:49vw;height:63dvh;right:-17vw;bottom:-29dvh;filter:blur(80px)}
.cloud.three{background:#ffe971;opacity:.4;width:36vw;height:42dvh;right:7%;top:12%;filter:blur(85px)}
h1 span{background:linear-gradient(108deg,#234819 8%,#3d7718 50%,#78b817 83%,#9dc918);background-clip:text;-webkit-background-clip:text;color:transparent}
.horizon{border-color:#ffffffe6;background:linear-gradient(180deg,#ffffff6b,transparent 50%)}
.glass-orbit{width:min(180px,24dvh);height:min(180px,24dvh);left:-75px;top:7%;opacity:.65}.glass-orbit.small{width:60px;height:60px;right:-10px;top:60%}

@media(max-width:700px){
 body{grid-template-rows:clamp(48px,8dvh,64px) minmax(0,1fr) clamp(38px,7dvh,54px)}
 header,footer{width:calc(100% - 32px)}main{width:calc(100% - 36px);gap:clamp(7px,1.3dvh,12px);padding-bottom:clamp(8px,1.5dvh,14px)}
 .header-emblem{width:33px;height:33px;border-radius:11px}.monogram .header-emblem img{width:25px;height:25px}.monogram{gap:9px}.monogram>span:last-child{font-size:7px;letter-spacing:1px;max-width:170px}
 
 .hero{padding:5px 0;justify-content:center}.eyebrow{font-size:7px;letter-spacing:2px}
 h1{font-size:min(8.6vw,9dvh,60px);margin:clamp(8px,2dvh,16px) -4px clamp(4px,1dvh,8px);letter-spacing:-.052em}
 .hero p{font-size:clamp(11px,1.65dvh,13px);line-height:1.7;margin-top:clamp(9px,1.8dvh,15px)}
 .coordinates{font-size:7px;letter-spacing:1.6px;margin-top:clamp(7px,1.6dvh,13px)}
 .destinations{height:clamp(240px,45dvh,370px);grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:clamp(10px,1.8dvh,16px);width:100%;max-width:450px}
 .destination,.destination.insurance,.destination.physio{padding:clamp(12px,1.9dvh,17px) 20px clamp(10px,1.6dvh,14px);border-radius:22px}
 .card-top{gap:9px}.card-label,.physio .card-label{font-size:7px;letter-spacing:1.3px}.external{width:12px;height:12px}
 .card-body{gap:15px;margin:4px 0 6px}.insurance-emblem{width:clamp(43px,7.5dvh,62px);height:clamp(43px,7.5dvh,62px);border-radius:17px;margin-right:4px}
 .card-copy h2{font-size:clamp(19px,5.7vw,24px)}.card-copy p{font-size:9px;margin-bottom:3px}
 .card-body.physio-brand{gap:3px;margin:4px 0 6px}.physio-brand p{font-size:9px}
 .card-body.physio-brand img{height:clamp(34px,6.6dvh,55px);max-height:70%;width:min(250px,100%)}
 .card-bottom,.physio .card-bottom{padding-top:6px}.card-bottom span,.physio .card-bottom span{font-size:8px}
 .arrow-disc,.physio .arrow-disc{width:21px;height:21px}.arrow-disc svg{width:11px;height:11px}
 .whisper{font-size:8px;letter-spacing:0;line-height:14px}.whisper span{width:9px;margin:0 7px}
 footer{padding:0;gap:9px;font-size:8px}.footer-links{gap:12px}.login-link{font-size:8px}.footer-divider{display:none}
 .glass-orbit{width:90px;height:90px;left:-55px;top:20%}.glass-orbit.small{width:42px;height:42px;right:-7px;top:60%}
 .cloud.one{width:100vw;height:53dvh;left:-45vw;top:-15dvh;filter:blur(55px)}.cloud.two{width:90vw;height:55dvh;right:-45vw;bottom:-20dvh;filter:blur(60px)}.cloud.three{width:70vw;height:40dvh;right:-15%;filter:blur(60px)}
}
@media(max-height:620px) and (max-width:700px){.coordinates,.whisper{display:none}main{grid-template-rows:minmax(0,1fr) auto}.hero p{font-size:11px;line-height:1.5}.eyebrow{font-size:6px;letter-spacing:1.5px}.destinations{height:43dvh;min-height:225px}.card-label,.physio .card-label{font-size:6px}.monogram>span:last-child{font-size:6px;max-width:140px}}
@media(min-width:701px) and (max-height:480px){
 body{grid-template-rows:45px minmax(0,1fr) 32px}main{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-rows:minmax(0,1fr);gap:35px;padding:8px 0;width:calc(100% - 70px)}
 .hero{grid-column:1;grid-row:1;padding:0}h1{font-size:min(4.25vw,10dvh,63px);margin:14px -8px}.hero p{font-size:12px;margin-top:14px}.coordinates{margin-top:13px;font-size:7px}.eyebrow{font-size:6px;letter-spacing:1.9px}
 .destinations{grid-column:2;grid-row:1;height:100%;max-height:285px;align-self:center;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:10px}.destination,.destination.insurance,.destination.physio{padding:11px 18px;border-radius:19px}
 .card-body{margin:3px 0 4px;gap:13px}.insurance-emblem{width:40px;height:40px;border-radius:13px}.card-body.physio-brand{margin:3px 0 4px;gap:2px}.card-body.physio-brand img{height:33px}.card-copy h2{font-size:20px}.card-copy p,.physio-brand p{font-size:8px}.card-label,.physio .card-label{font-size:6px}.card-bottom,.physio .card-bottom{padding-top:4px}.arrow-disc,.physio .arrow-disc{height:19px;width:19px}.card-bottom span,.physio .card-bottom span{font-size:8px}.whisper{display:none}.glass-orbit{width:100px;height:100px}.glass-orbit.small{width:40px;height:40px}
}


@media(orientation:landscape) and (max-width:700px) and (max-height:480px){
 body{grid-template-rows:42px minmax(0,1fr) 30px}main{grid-template-rows:minmax(0,1fr) auto;gap:7px;padding-bottom:7px}.hero p,.coordinates,.whisper{display:none}.hero{padding:0}.eyebrow{font-size:6px;letter-spacing:1.5px}h1{font-size:min(7.5vw,14dvh,52px);margin:10px -4px}
 .destinations{height:42dvh;min-height:125px;max-height:155px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr;max-width:none;gap:12px}
 .destination,.destination.insurance,.destination.physio{padding:10px 13px;border-radius:18px}.card-label,.physio .card-label{font-size:5.5px;letter-spacing:.8px}.card-label .number{margin-right:5px}.card-body{gap:8px}.insurance-emblem{width:36px;height:36px;border-radius:11px;margin-right:0}.card-copy h2{font-size:clamp(13px,2.8vw,18px);letter-spacing:-.5px}.card-copy p,.physio-brand p{font-size:7px}.card-body.physio-brand img{height:35px}.card-bottom span,.physio .card-bottom span{font-size:7px}.arrow-disc,.physio .arrow-disc{height:18px;width:18px}.header-emblem{width:28px;height:28px}.monogram .header-emblem img{height:21px;width:21px}
}
@media(orientation:portrait) and (max-height:480px){.hero p,.coordinates,.whisper,.eyebrow{display:none}.destinations{height:54dvh;min-height:210px}main{grid-template-rows:minmax(0,1fr) auto}h1{margin:6px -4px}}

@media(max-height:620px) and (max-width:700px){.physio-brand p{display:none}.card-body.physio-brand img{max-height:100%;height:clamp(34px,7dvh,50px);flex-shrink:0}}
@media(orientation:portrait) and (max-height:480px){.card-bottom,.physio .card-bottom{display:none}.card-body{margin:4px 0 0}.card-body.physio-brand img{height:48px;max-height:100%}}

/* Fassung 05: welcome copy and greens sampled from the supplied reference. */
body{grid-template-rows:clamp(38px,7dvh,60px) minmax(0,1fr) clamp(36px,7dvh,58px)}
header{justify-content:flex-end}
main{grid-template-rows:minmax(0,1fr) auto;padding-bottom:clamp(16px,3dvh,30px)}
.eyebrow{display:block;font-size:clamp(12px,1.85dvh,16px);font-weight:500;letter-spacing:2px;color:#50734a}
.hero p{display:block;max-width:760px;font-size:clamp(12px,1.95dvh,17px);line-height:1.7;color:#486841;margin-top:clamp(16px,3.5dvh,30px);padding:0 10px}
h1 span{background:linear-gradient(110deg,#214c25 8%,#3c7934 50%,#4d9741 78%,#7e9e36);background-clip:text;-webkit-background-clip:text;color:transparent}
.atmosphere{background:linear-gradient(112deg,#4d9741 0%,#73aa40 53%,#aac13f 100%)}
.atmosphere:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 10%,#fffffff2 0%,#ffffffd9 24%,#ffffff8a 48%,#ffffff24 78%,transparent 100%);pointer-events:none}
.cloud.one{background:#4d9741;opacity:.23}.cloud.two{background:#aac13f;opacity:.35}.cloud.three{background:#83b648;opacity:.21}
.horizon{z-index:1;opacity:.5;border-color:#ffffffb0;background:linear-gradient(180deg,#ffffff4a,transparent 50%)}
.destination,.destination.insurance,.destination.physio{background:linear-gradient(135deg,#ffffffde,#ffffffb8);--glow:#79b34b24;box-shadow:inset 0 1px 0 white,0 15px 45px #264a1b0b}
.destination:hover,.destination.insurance:hover,.destination.physio:hover{background:linear-gradient(135deg,#fffffff5,#ffffffe0);box-shadow:inset 0 1px 0 white,0 20px 50px #264a1b14}
.card-label,.physio .card-label{color:#688963}.card-copy p,.physio-brand p{color:#718b67}.card-bottom span,.physio .card-bottom span{color:#749066}
.arrow-disc,.physio .arrow-disc{color:#4d9741;background:linear-gradient(135deg,#fff,#e8f1d9);border-color:#d7e6ca}
footer{color:#f1f5e7;border-color:#ffffff30}.footer-links a,.login-link{color:#eff4e5}.footer-links a:hover,.login-link:hover{color:white}.footer-divider{background:#ffffff38}
@media(max-width:700px){
 body{grid-template-rows:clamp(38px,7dvh,56px) minmax(0,1fr) clamp(36px,7dvh,54px)}
 main{grid-template-rows:minmax(0,1fr) auto;padding-bottom:clamp(10px,2dvh,18px)}
 .eyebrow{display:block;font-size:clamp(11px,1.6dvh,13px);letter-spacing:1.4px}
 .hero p{display:block;max-width:350px;font-size:clamp(11px,1.6dvh,13px);line-height:1.65;margin-top:clamp(12px,2.3dvh,20px);padding:0 7px}
}
@media(min-width:701px) and (max-height:480px){
 body{grid-template-rows:38px minmax(0,1fr) 32px}main{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-rows:minmax(0,1fr);padding:8px 0}.eyebrow{font-size:12px}.hero p{font-size:12px;margin-top:15px;max-width:330px}
}
@media(orientation:landscape) and (max-width:700px) and (max-height:480px){.eyebrow{display:block;font-size:10px;letter-spacing:1px}.hero p{display:block;font-size:10px;line-height:1.4;margin-top:7px;max-width:410px}h1{margin:6px -4px;font-size:min(6.6vw,11dvh,46px)}main{padding-bottom:7px}.hero{padding:0}}
@media(orientation:portrait) and (max-height:480px){.eyebrow{display:block;font-size:10px;letter-spacing:1px}.hero p{display:block;font-size:10px;line-height:1.4;margin-top:5px;padding:0}h1{margin:6px -4px}.destinations{height:52dvh;min-height:210px}main{padding-bottom:8px}}


/* Fassung 06: a continuous glass ribbon, refined type and quieter depth. */
.atmosphere{background:linear-gradient(112deg,#4d9741 0%,#78ac43 53%,#aac13f 100%)}
.atmosphere:after{background:radial-gradient(ellipse at 48% 13%,#fffffff7 0%,#ffffffe3 23%,#ffffff96 49%,#ffffff2b 80%,transparent 100%)}
.flow-sculpture{position:absolute;inset:-3%;width:106%;height:106%;z-index:1;pointer-events:none;opacity:.83;transform-origin:50% 60%;animation:glassFlow 60s cubic-bezier(.45,0,.55,1) infinite alternate;will-change:transform}
.horizon{display:none}.glass-orbit{display:none}
.glint{width:4px;height:4px;opacity:.45;background:white;box-shadow:0 0 18px #fff9;right:8%;top:28%}
.hero{isolation:isolate}
.eyebrow{display:inline-flex;align-items:center;justify-content:center;gap:14px;color:#4b6f49;font-weight:450;letter-spacing:2.3px}
.eyebrow:before,.eyebrow:after{content:'';width:22px;height:1px;background:linear-gradient(90deg,transparent,#749a6f65)}
.eyebrow:after{transform:rotate(180deg)}
h1{font-weight:720;letter-spacing:-.055em;text-rendering:optimizeLegibility}
h1 span{background:linear-gradient(108deg,#173d22 4%,#315f30 35%,#538b39 67%,#769a39 89%,#426c2b);background-size:160% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:titleLustre 14s ease-in-out infinite alternate}
h1:after{width:110px;left:calc(50% - 55px);height:1px;background:linear-gradient(90deg,transparent,#608f4c50,transparent)}
.hero p{font-weight:400;letter-spacing:.06px;color:#55704d;max-width:720px}
.destinations{perspective:1600px}
.destination,.destination.insurance,.destination.physio{border-radius:30px;border:1px solid #fffffff0;background:linear-gradient(125deg,#ffffffc2 0%,#ffffffa6 42%,#fafff2b8 100%);backdrop-filter:blur(30px) saturate(130%);box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #ffffff60,0 17px 45px #234d1b0a,0 2px 7px #30532204;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px));transition:transform .7s cubic-bezier(.16,1,.3,1),box-shadow .5s,background .5s,border-color .4s}
.destination:after{inset:2px;height:auto;border:1px solid #ffffff70;border-radius:28px;opacity:1;background:none;pointer-events:none;z-index:-1}
.destination:before{background:radial-gradient(340px circle at var(--mx,50%) var(--my,0%),#ffffffa3,transparent 70%),linear-gradient(115deg,transparent 35%,#ffffff14 52%,transparent 68%);pointer-events:none;z-index:-1}
.destination:hover,.destination.insurance:hover,.destination.physio:hover{--lift:-4px;border-color:white;background:linear-gradient(125deg,#ffffffe3,#ffffffc9 55%,#fafff2dd);box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #ffffff70,0 25px 55px #234d1b14,0 4px 12px #30532207}
.card-label,.physio .card-label{font-weight:600;letter-spacing:1.8px;color:#628258}
.card-label .number,.physio .card-label .number{display:inline-grid;place-items:center;min-width:23px;min-height:17px;margin-right:9px;border:1px solid #9db78c2b;border-radius:999px;background:#ffffff4d;color:#8aa376;font-weight:450;letter-spacing:.5px}
.external,.physio .external{opacity:.65;transition:opacity .4s,transform .4s}
.destination:hover .external{opacity:1;transform:translate(1px,-1px)}
.card-copy h2{font-weight:640;letter-spacing:-.9px;color:#254526}
.card-copy p,.physio-brand p{color:#718866;font-weight:400}
.insurance-emblem{background:linear-gradient(145deg,#ffffffbf,#edf6dc9c);border-color:#fff;border-radius:21px;box-shadow:inset 2px 2px 3px #fff,0 7px 18px #3d6b1c09;transform:rotate(-5deg)}
.card-body .insurance-emblem img{filter:drop-shadow(1px 3px 1px #34570f0c)}
.card-body.physio-brand img{opacity:.72;transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .4s}
.physio:hover .physio-brand img{transform:translateY(-2px);opacity:.85}
.card-bottom,.physio .card-bottom{border-color:#88aa6c26}
.card-bottom span,.physio .card-bottom span{font-size:9px;letter-spacing:.2px;color:#7c936c;transition:color .4s}
.destination:hover .card-bottom span{color:#4b713b}
.arrow-disc,.physio .arrow-disc{background:linear-gradient(135deg,#ffffffa6,#edf5e1a8);box-shadow:inset 0 1px 0 #fff,0 3px 8px #416d2305;border-color:#fff;color:#608b43;transition:transform .5s cubic-bezier(.16,1,.3,1),background .4s,color .4s,box-shadow .4s}
.destination:hover .arrow-disc{transform:translateX(3px);background:#4d9741;color:#fff;box-shadow:inset 0 1px 0 #ffffff4a,0 5px 12px #4d97412b}
footer{border-color:#ffffff30;color:#f1f5e7}.footer-links a,.login-link{opacity:.76;transition:opacity .3s}.footer-links a:hover,.login-link:hover{opacity:1}
.draft-badge:hover{background:#ffffff80;box-shadow:0 4px 15px #305b1e0a}
@keyframes glassFlow{0%{transform:translate3d(-1.5%,-2.5%,0) rotate(-1.8deg) scale(1.04)}100%{transform:translate3d(1.5%,2.5%,0) rotate(1.8deg) scale(1.06)}}
@keyframes titleLustre{from{background-position:0% 50%}to{background-position:100% 50%}}
@media(max-width:700px){.eyebrow{gap:10px;letter-spacing:1.7px}.eyebrow:before,.eyebrow:after{width:14px}.hero p{max-width:340px}.destination,.destination.insurance,.destination.physio{border-radius:25px}.destination:after{border-radius:23px}.card-label,.physio .card-label{letter-spacing:1.3px}.card-label .number,.physio .card-label .number{min-width:19px;min-height:14px;margin-right:7px}.card-bottom span,.physio .card-bottom span{font-size:8px}.insurance-emblem{border-radius:17px}.flow-sculpture{opacity:.67}}
@media(max-height:620px) and (max-width:700px){.card-label .number,.physio .card-label .number{min-width:16px;min-height:11px;margin-right:6px}.card-label,.physio .card-label{letter-spacing:1px}}
@media(min-width:701px) and (max-height:480px){.destination,.destination.insurance,.destination.physio{border-radius:23px}.destination:after{border-radius:21px}.card-label .number,.physio .card-label .number{min-width:17px;min-height:12px}.insurance-emblem{border-radius:13px}.card-bottom span,.physio .card-bottom span{font-size:8px}}
@media(orientation:landscape) and (max-width:700px) and (max-height:480px){.destination,.destination.insurance,.destination.physio{border-radius:20px}.destination:after{border-radius:18px}.card-label,.physio .card-label{letter-spacing:.8px}.card-label .number,.physio .card-label .number{min-width:15px;min-height:11px}.card-bottom span,.physio .card-bottom span{font-size:7px}.insurance-emblem{border-radius:11px}}
@media(prefers-reduced-motion:reduce){.flow-sculpture,h1 span{animation:none!important}.destination:hover{--lift:0px}}


/* Longer upward entrance and a footer at twice its previous type size. */
.hero h1{animation:titleRise 3.2s cubic-bezier(.18,.75,.18,1) .05s both}
@keyframes titleRise{0%{opacity:0;filter:blur(13px);transform:translate3d(0,clamp(60px,12dvh,120px),-200px) rotateX(12deg) scale(1.04)}42%{opacity:1;filter:blur(1px)}100%{opacity:1;filter:blur(0);transform:translate3d(0,0,0) rotateX(0) scale(1)}}
body{grid-template-rows:clamp(38px,7dvh,60px) minmax(0,1fr) clamp(48px,8dvh,68px)}
footer{font-size:18px;line-height:1.35;align-items:center}
.footer-links,.login-link{font-size:inherit}.footer-links{gap:24px}.login-link svg{width:22px;height:22px}.footer-divider{height:18px}
@media(max-width:700px){
 body{grid-template-rows:clamp(38px,7dvh,56px) minmax(0,1fr) clamp(66px,10dvh,90px)}
 footer{font-size:16px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;line-height:1.25;padding:0;flex-wrap:nowrap}
 .footer-links{gap:12px;justify-content:center;white-space:nowrap}.login-link{gap:5px}.login-link svg{width:22px;height:22px}
}
@media(min-width:701px) and (max-height:480px){body{grid-template-rows:38px minmax(0,1fr) 48px}}
@media(orientation:landscape) and (max-width:700px) and (max-height:480px){body{grid-template-rows:38px minmax(0,1fr) 44px}footer{flex-direction:row;justify-content:space-between;gap:12px}.footer-links{gap:12px}}
@media(orientation:portrait) and (max-height:480px){body{grid-template-rows:36px minmax(0,1fr) 66px}.destinations{height:47.5dvh;min-height:190px}.destination,.destination.insurance,.destination.physio{padding-top:10px;padding-bottom:9px}.card-body.physio-brand img{height:43px}}
@media(prefers-reduced-motion:reduce){.hero h1{animation:none!important;transform:none!important;filter:none!important;opacity:1}}


/* Bring both homepage tiles closer to the centre of the viewport. */
.destinations{position:relative;top:calc(-1 * clamp(18px,4.5dvh,42px))}
@media(max-width:700px){.destinations{top:calc(-1 * clamp(10px,2.8dvh,24px))}}
@media(max-width:700px) and (max-height:620px){.destinations{top:0}}
@media(min-width:701px) and (max-height:480px){.destinations{top:0}}

/* A dedicated sign-in glass tile in the top-right corner. */
body{grid-template-rows:clamp(50px,8dvh,68px) minmax(0,1fr) clamp(48px,8dvh,68px)}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}
header .login-tile{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-width:160px;height:46px;padding:9px 18px;border:1px solid #fffffff2;border-radius:17px;background:linear-gradient(130deg,#ffffffc4,#ffffff73);backdrop-filter:blur(24px) saturate(130%);box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #ffffff60,0 6px 20px #3150210b;color:#365a2b;font-size:18px;font-weight:500;line-height:1.2;opacity:1;transition:background .3s,box-shadow .3s,transform .3s}
header .login-tile svg{width:20px;height:20px;color:#638c4b}
header .login-tile:hover{background:linear-gradient(130deg,#fffffff1,#ffffffbe);box-shadow:inset 0 1px 0 #fff,0 9px 26px #31502118;transform:translateY(-1px);color:#254b22}
header .login-tile:active{transform:translateY(0)}
@media(max-width:700px){body{grid-template-rows:clamp(50px,8dvh,68px) minmax(0,1fr) clamp(66px,10dvh,90px)}.header-actions{gap:10px}header .login-tile{height:42px;min-width:138px;padding:8px 14px;gap:9px;border-radius:15px;font-size:16px}header .login-tile svg{width:19px;height:19px}}
@media(min-width:701px) and (max-height:480px){body{grid-template-rows:50px minmax(0,1fr) 48px}header .login-tile{height:40px}}
@media(orientation:landscape) and (max-width:700px) and (max-height:480px){body{grid-template-rows:44px minmax(0,1fr) 44px}header .login-tile{height:34px;min-width:132px;padding:6px 12px;border-radius:12px}h1{margin-top:3px;margin-bottom:3px}}
@media(orientation:portrait) and (max-height:480px){body{grid-template-rows:44px minmax(0,1fr) 66px}.header-actions{gap:8px}header .login-tile{height:34px;min-width:132px;padding:6px 12px;gap:8px;border-radius:12px}h1{margin-top:3px;margin-bottom:3px}.hero p{margin-top:3px}}


/* The page hint and footer share the same responsive type size. */
:root{--support-font-size:clamp(12px,1.95dvh,17px)}
@media(max-width:700px){:root{--support-font-size:clamp(11px,1.6dvh,13px)}}
@media(min-width:701px) and (max-height:480px){:root{--support-font-size:12px}}
@media(orientation:landscape) and (max-width:700px) and (max-height:480px){:root{--support-font-size:10px}}
@media(orientation:portrait) and (max-height:480px){:root{--support-font-size:10px}}
.hero p,footer{font-size:var(--support-font-size)}
.footer-links{font-size:inherit}
