/* Moderna Home – landing. Design-system tokens (Moderna DS b128eb19) + page styles from 'Moderna Home.dc.html'. */
@font-face{font-family:'TT Hoves Pro';src:url('fonts/TT-Hoves-Pro-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'TT Hoves Pro';src:url('fonts/TT-Hoves-Pro-Medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}

:root{
--font-sans:'TT Hoves Pro','Helvetica Neue',Arial,sans-serif;--font-body:var(--font-sans);--font-heading:var(--font-sans);--fw-heading:500;/* @kind font */--fw-body:400;/* @kind font */
--fw-light:300;/* @kind font */--fw-regular:400;/* @kind font */--fw-medium:500;/* @kind font */--fw-semibold:600;/* @kind font */--fw-bold:700;/* @kind font */
--fs-hero:72px;--fs-h1:56px;--fs-h2:48px;--fs-h3:32px;--fs-h4:24px;--fs-lead:18px;--fs-body:16px;--fs-nav:15px;--fs-small:14px;--fs-eyebrow:13px;--fs-micro:11px;
--lh-tight:1.15;/* @kind font */--lh-heading:1.25;/* @kind font */--lh-body:1.75;/* @kind font */--lh-ui:1.3;/* @kind font */
--ls-eyebrow:.02em;/* @kind font */--ls-eyebrow-wide:.22em;/* @kind font */--ls-display:-.01em;/* @kind font */
--type-hero:var(--fw-heading) var(--fs-hero)/var(--lh-tight) var(--font-sans);
--type-h1:var(--fw-heading) var(--fs-h1)/var(--lh-tight) var(--font-sans);
--type-h2:var(--fw-heading) var(--fs-h2)/var(--lh-heading) var(--font-sans);
--type-body:var(--fw-regular) var(--fs-lead)/var(--lh-body) var(--font-sans);
}

:root{
--m-black:#000000;--m-ink:#212529;--m-white:#ffffff;
--m-gold:#b89a5b;--m-gold-soft:#e6d3ab;--m-gold-line:#dbccad;--m-gold-wash:#fbfaf6;
--m-gray-700:#707070;--m-gray-500:#888888;--m-gray-400:#9e9e9e;--m-gray-300:#bcbdbe;--m-gray-200:#d0d0d0;--m-gray-100:#f2f2f2;--m-gray-50:#f8f8f8;
--m-green-100:#d5e6cf;--m-green-ink:#3f4345;
--m-red-100:#f0d6d2;--m-amber-100:#efe3c6;
--text-primary:var(--m-ink);--text-strong:var(--m-black);--text-muted:var(--m-gray-500);--text-accent:var(--m-gold);--text-inverse:var(--m-white);
--surface-page:var(--m-white);--surface-card:var(--m-white);--surface-dark:var(--m-black);--surface-overlay:rgba(0,0,0,.38);--surface-bar:rgba(110,110,110,.62);
--border-field:var(--m-gray-700);--border-filter:var(--m-gray-300);--border-divider:var(--m-gray-200);--border-rule:var(--m-black);--border-check:var(--m-gold-line);
--link-underline:var(--m-gold-soft);
--status-free:var(--m-green-100);--status-reserved:var(--m-amber-100);--status-sold:var(--m-red-100);
--action-primary-bg:var(--m-black);--action-primary-fg:var(--m-white);--nav-active:var(--m-gold);
}

:root{
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:140px;
--container:1232px;/* @kind spacing */--gutter:117px;/* @kind spacing */--header-h:70px;/* @kind spacing */--bar-h:72px;/* @kind spacing */
--radius-0:0;--radius-xs:2px;--radius-sm:3px;--radius-md:4px;--radius-card:5px;--radius-pill:999px;
--shadow-card:0 2px 14px rgba(0,0,0,.08);--shadow-card-hover:0 6px 24px rgba(0,0,0,.12);
--rule-heavy:2px solid var(--m-black);/* @kind other */--rule-thin:1px solid var(--m-gray-200);/* @kind other */
--ease:cubic-bezier(.25,.1,.25,1);/* @kind other */--dur-fast:.2s;/* @kind other */--dur:.35s;/* @kind other */--dur-slow:.8s;/* @kind other */
}

html,body{margin:0;background:var(--surface-page);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}
a{color:var(--text-primary);text-decoration:none;transition:color var(--dur-fast) var(--ease)}
a:hover{color:var(--m-gold)}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--fw-heading)}
p,a,li,span,input,textarea,button,label{font-family:var(--font-body)}

/* page */
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--m-ink);font-family:var(--font-sans)}
a{color:inherit;text-decoration:none;transition:color .2s}
a:hover{color:var(--m-gold)}
section{scroll-margin-top:70px}
/* hover states (style-hover in the design) */
.mh-h0:hover{transform:scale(1.03)!important}
.mh-h1:hover{opacity:1!important}
.mh-h2:hover{opacity:.88!important;transform:scale(1.02)!important}
/* design-system Button hover */
.mh-btn--primary:not(:disabled):hover,.mh-btn--white:not(:disabled):hover{opacity:.82!important}
.mh-btn--outline:hover{background:var(--m-black)!important;color:#fff!important}
.mh-btn--outline-light:hover{background:#fff!important;color:var(--m-black)!important}
/* design-system TextInput focus */
#kontakt input:focus,#kontakt textarea:focus{border-color:var(--m-black)!important}
