/* Lomakeosion asettelu: kortti ja sivupalsta. Itse lomakkeen kentät tyylitellään
   globaalissa assets/css/components/forms.css:ssä (.mt-gf). */
.mt-form__layout{display:grid;gap:1.5rem;align-items:start}
.mt-form__card{padding:clamp(1.5rem,4vw,2.5rem);border-radius:var(--mt-radius);background:var(--mt-mist)}
.mt-form__intro{margin:1.125rem 0 0;font-size:var(--mt-fs-base);color:var(--mt-muted)}
.mt-form__footnote{margin:1rem 0 0;font-size:var(--mt-fs-md);color:var(--mt-muted)}
.mt-form__placeholder{margin:1.5rem 0 0;padding:2rem;border:.0625rem dashed var(--mt-field);border-radius:var(--mt-radius);color:var(--mt-muted);text-align:center}
.mt-form__aside{display:grid;gap:1.25rem}
.mt-form__box{display:flex;flex-direction:column;gap:.625rem;padding:1.75rem;border:.0625rem solid var(--mt-line);border-radius:var(--mt-radius);font-size:var(--mt-fs-base);line-height:1.5;color:var(--mt-text)}
.mt-form__box p{margin:0}
.mt-form__box a{display:inline-block;padding-block:.125rem;color:inherit;text-underline-offset:.2em}
.mt-form__box>.mt-icon{color:var(--mt-coral-strong)}
.mt-form__address{font-weight:500;color:var(--mt-ink)}
.mt-form__box .mt-form__box-link{display:inline-flex;align-items:center;gap:.5rem;min-block-size:1.5rem;padding-block:.25rem .3125rem;border-block-end:.0625rem solid currentColor;font:500 var(--mt-fs-xs)/1.2 var(--mt-font-display);letter-spacing:var(--mt-tracking-caps);text-transform:uppercase;text-decoration:none}
.mt-form__box-title{margin:0;font:400 var(--mt-fs-h4)/1.15 var(--mt-font-display);letter-spacing:-.03125rem;color:var(--mt-ink)}
.mt-form__box--navy{gap:.5rem;border-color:transparent;background:var(--mt-navy);color:var(--mt-on-navy-soft)}
.mt-form__box--navy .mt-eyebrow{font-size:var(--mt-fs-2xs);color:var(--mt-coral)}
.mt-form__phone{font:400 var(--mt-fs-h3)/1.15 var(--mt-font-display);color:var(--mt-white)}
.mt-form__phone a{text-decoration:none}

@container (min-width:56rem){.mt-form__layout{grid-template-columns:minmax(0,808fr) minmax(0,400fr);gap:3.5rem}.mt-form--single .mt-form__layout{grid-template-columns:minmax(0,50.5rem)}}

/* Tumma laatta (Pen: Hankekysely). */
.mt-section.mt-form--panel{padding-block:var(--mt-space-section-lg)}
.mt-form__panel{display:grid;gap:2rem;padding:clamp(1.5rem,5vw,3.5rem);border-radius:var(--mt-radius);background:var(--mt-navy);color:var(--mt-on-navy-soft)}
.mt-form__panel-copy{display:flex;flex-direction:column;gap:1rem;font-size:var(--mt-fs-base);line-height:1.5}
.mt-form__panel-copy p{margin:0}
.mt-form__panel .mt-h2{color:var(--mt-white)}
.mt-form__panel .mt-form__phone{margin-block-start:.75rem;font-size:var(--mt-fs-h4)}
.mt-form__panel .mt-form__phone a{color:var(--mt-white)}
.mt-form__panel-note{font-size:var(--mt-fs-md);color:var(--mt-on-navy-muted)}
.mt-form__panel .mt-form__footnote{font-size:var(--mt-fs-sm);color:var(--mt-on-navy-muted)}
.mt-form__panel .mt-form__placeholder{margin:0;border-color:var(--mt-on-navy-border);color:var(--mt-on-navy-soft)}
@container (min-width:56rem){.mt-form__panel{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:3.5rem}}
.mt-form__phone a{display:inline-block;padding-block:.25rem}
.mt-form__panel-copy a{display:inline-block;padding-block:.25rem;color:var(--mt-white);text-underline-offset:.2em}

/* Avoin asettelu (Pen: Yhteystiedot / Lomake ja saapuminen): lomake ilman korttia, vieressä kartta ja osoite. */
.mt-form--open .mt-form__card{padding:0;border-radius:0;background:none}
.mt-form--open .mt-form__intro{margin-block-start:var(--mt-space-sm)}
/* Kartta: upotus sävytetään harmaasävyn ja tummansinisen kerroksen avulla brändin väreihin; kartta pysyy käytettävänä. */
.mt-form__map{position:relative;isolation:isolate;overflow:hidden;inline-size:100%;block-size:18.75rem;border-radius:var(--mt-radius);background:var(--mt-mist)}
.mt-form__map iframe{position:absolute;inset:0;inline-size:100%;block-size:100%;border:0;filter:grayscale(1) contrast(1.08) brightness(1.03)}
.mt-form__map::after{content:"";position:absolute;inset:0;z-index:1;background:var(--mt-navy);mix-blend-mode:color;opacity:.7;pointer-events:none}
.mt-form__box--address .mt-eyebrow{font-size:var(--mt-fs-2xs)}
.mt-form__box-links{display:flex;flex-wrap:wrap;gap:var(--mt-space-xs) var(--mt-space-md);margin-block-start:var(--mt-space-2xs)}
@container (min-width:56rem){.mt-form--open .mt-form__layout{grid-template-columns:minmax(0,680fr) minmax(0,522fr);gap:3.875rem}}
