@layer medkapu.tokens {
  :root {
    --mk-aubergine: #4B2A4D;
    --mk-warm-black: #1F1E1C;
    --mk-warm-ivory: #F7F3EC;
    --mk-soft-rose: #D79BAA;
    --mk-font-sans: Inter, Satoshi, "Helvetica Neue", Arial, sans-serif;
    --mk-ease: cubic-bezier(.2,.78,.2,1);
    --mk-logo-intro-duration: 1650ms;
    --mk-focus: #4B2A4D;
  }
}

@layer medkapu.base, medkapu.components;

@layer medkapu.base {
  .mk-brand, .mk-brand * { box-sizing: border-box; }
  .mk-brand { font-family: var(--mk-font-sans); color: var(--mk-warm-black); }
  .mk-brand img, .mk-brand svg { display: block; max-width: 100%; height: auto; }
  .mk-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
}

@layer medkapu.components {
  .mk-header-brand { display:inline-flex; align-items:center; text-decoration:none; min-width:0; }
  .mk-header-brand__desktop { width:clamp(170px, 16vw, 250px); }
  .mk-header-brand__mobile { width:clamp(132px, 42vw, 188px); }
  .mk-header-brand__symbol { width:32px; height:32px; }

  .mk-hero { position:relative; min-height:100svh; color:#fff; isolation:isolate; overflow:hidden; background:var(--mk-aubergine); }
  .mk-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(31,30,28,.66), rgba(31,30,28,.20) 60%, rgba(31,30,28,.08)); pointer-events:none; }
  .mk-hero__content { min-height:100svh; display:grid; align-content:center; gap:1.25rem; width:min(780px, calc(100% - 3rem)); margin-inline:auto; }
  .mk-hero__headline { margin:0; font:500 clamp(2.1rem, 5vw, 5rem)/1.02 var(--mk-font-sans); text-wrap:balance; }
  .mk-hero__support { margin:0; max-width:62ch; font:400 clamp(1rem, 1.6vw, 1.3rem)/1.55 var(--mk-font-sans); }
  .mk-hero__actions { display:flex; flex-wrap:wrap; gap:.75rem; }

  .mk-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.8rem 1.15rem; border-radius:999px; border:1px solid currentColor; font:600 1rem/1 var(--mk-font-sans); text-decoration:none; transition:transform .2s var(--mk-ease), background .2s ease; }
  .mk-button:hover { transform:translateY(-1px); }
  .mk-button--primary { color:var(--mk-warm-black); background:var(--mk-warm-ivory); border-color:var(--mk-warm-ivory); }
  .mk-button--secondary { color:#fff; background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.55); backdrop-filter:blur(10px); }
  .mk-button:focus-visible, .mk-contact-starter:focus-visible, .mk-header-brand:focus-visible { outline:3px solid var(--mk-soft-rose); outline-offset:4px; }

  .mk-contact-starter { position:fixed; right:clamp(1rem, 3vw, 2.5rem); bottom:clamp(1rem, 3vw, 2.5rem); z-index:40; display:grid; grid-template-columns:56px minmax(0,1fr) 42px; align-items:center; gap:.85rem; width:min(440px, calc(100vw - 2rem)); padding:.55rem .65rem; border:1px solid rgba(75,42,77,.20); border-radius:999px; color:var(--mk-warm-black); background:color-mix(in srgb, var(--mk-warm-ivory) 92%, transparent); box-shadow:0 14px 45px rgba(31,30,28,.14); backdrop-filter:blur(18px); text-align:left; cursor:pointer; }
  .mk-contact-starter__icon { display:grid; place-items:center; width:56px; aspect-ratio:1; border-radius:50%; background:var(--mk-aubergine); }
  .mk-contact-starter__icon img { width:36px; }
  .mk-contact-starter__text strong { display:block; font-size:.98rem; }
  .mk-contact-starter__text span { display:block; margin-top:.2rem; color:var(--mk-aubergine); font-size:.82rem; }
  .mk-contact-starter__arrow { display:grid; place-items:center; width:42px; aspect-ratio:1; border-radius:50%; color:#fff; background:var(--mk-aubergine); font-size:1.25rem; }

  .mk-footer-brand { display:grid; gap:.8rem; }
  .mk-footer-brand img { width:min(280px, 80vw); }
  .mk-footer-brand__slogan { margin:0; color:var(--mk-aubergine); }

  @media (max-width: 767px) {
    .mk-header-brand__desktop { display:none; }
    .mk-contact-starter { grid-template-columns:48px minmax(0,1fr); }
    .mk-contact-starter__icon { width:48px; }
    .mk-contact-starter__arrow { display:none; }
    .mk-hero__content { width:min(100% - 2rem, 680px); }
  }
  @media (min-width: 768px) {
    .mk-header-brand__mobile { display:none; }
  }
  @media (max-width: 360px) {
    .mk-header-brand__mobile { display:none; }
    .mk-header-brand__symbol { display:block; }
  }
  @media (min-width: 361px) {
    .mk-header-brand__symbol { display:none; }
  }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior:auto!important; animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.001ms!important; }
  }
}
