/* Approved current ContactPage styles, loaded only on /yhteystiedot/. */
.sr-only{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}
.phase11-page .button{min-height:44px}
.phase11-page{overflow:hidden;padding-bottom:var(--space-lg)}.phase11-shell{max-width:1080px}.phase11-page .breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:1.25rem;color:var(--color-muted);font-size:.875rem}.phase11-page .breadcrumb a{color:var(--color-deep-green)}
.phase11-hero{display:grid;grid-template-columns:minmax(0,58fr) minmax(18rem,42fr);align-items:center;gap:clamp(2rem,5vw,4.5rem);padding:clamp(3rem,7vw,6rem) 0}.phase11-hero h1{max-width:15ch}.phase11-hero>div:first-child>p{max-width:46rem}.phase11-graphic{position:relative;min-height:22rem;overflow:hidden;border-radius:var(--radius-lg);background:var(--color-green-light)}.phase11-contact-graphic span,.phase11-contact-graphic i,.phase11-contact-graphic b,.phase11-contact-graphic em{position:absolute;display:block}.phase11-contact-graphic span{width:38%;height:30%;border:2px solid var(--color-deep-green);border-radius:46%}.phase11-contact-graphic span:first-child{left:12%;top:23%}.phase11-contact-graphic span:nth-child(2){right:12%;bottom:23%;border-color:var(--color-muted-teal)}.phase11-contact-graphic i,.phase11-contact-graphic b{height:2px;width:48%;background:var(--color-muted-teal)}.phase11-contact-graphic i{left:23%;top:43%;transform:rotate(13deg)}.phase11-contact-graphic b{right:18%;bottom:39%;transform:rotate(-18deg)}.phase11-contact-graphic em{right:13%;top:18%;width:1rem;height:1rem;border-radius:50%;background:var(--color-copper);box-shadow:0 0 0 .5rem rgba(184,115,74,.16)}
.phase11-page .phase11-hero + .phase11-section{margin-top:clamp(1.5rem,4vw,3rem)}
.phase11-contact-page .phase11-hero{padding-bottom:0}
.phase11-contact-page .phase11-hero + .phase11-section,.phase11-contact-page .phase11-company-details,.phase11-contact-page .phase11-contact-cta{margin-top:64px}
@media(max-width:767px){.phase11-contact-page .phase11-hero + .phase11-section,.phase11-contact-page .phase11-company-details,.phase11-contact-page .phase11-contact-cta{margin-top:40px}}
.phase11-section{margin-top:clamp(3rem,7vw,6rem)}.phase11-section-heading{max-width:800px;margin-bottom:2rem}.phase11-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.phase11-contact-grid article{display:flex;min-height:19rem;flex-direction:column;padding:1.5rem;border:var(--border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm)}.phase11-contact-grid h3{margin:1rem 0 .6rem}.phase11-contact-grid p{color:#465250}.phase11-contact-grid a,.phase11-contact-grid button{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;margin-top:auto;padding:0;border:0;background:none;color:var(--color-deep-green);font-weight:750;text-align:left;text-decoration:none}.phase11-contact-grid button{font:inherit;font-weight:750}.phase11-icon{display:grid;width:3rem;height:3rem;place-items:center;border-radius:var(--radius-sm);background:var(--color-green-light);color:var(--color-deep-green)}.phase11-unavailable{margin-top:auto;color:var(--color-muted);font-size:.9rem;font-weight:650}.phase11-contact-cta{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;margin-top:clamp(3.5rem,8vw,7rem);padding:clamp(2rem,5vw,4rem);border-radius:var(--radius-lg);background:var(--color-charcoal);color:#fff}.phase11-contact-cta h2{color:#fff}.phase11-contact-cta p:not(.eyebrow){max-width:50rem;color:#d5e1dd}.phase11-contact-cta .button{background:#fff;color:var(--color-deep-green)}
.phase11-company-details{width:100%;margin-top:clamp(3rem,7vw,6rem);padding:clamp(1.5rem,4vw,2.375rem);border:var(--border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm)}
.phase11-company-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.phase11-company-heading h2{margin:.75rem 0 0}.phase11-company-heading p:not(.eyebrow){max-width:34ch;margin:.7rem 0 0;color:var(--color-muted);font-size:.95rem;line-height:1.6}
.phase11-company-heading .brand-graphic{flex:0 0 10rem;width:10rem;max-width:none;height:auto;min-height:0;aspect-ratio:1.12;animation:none}
.phase11-company-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(1.5rem,4vw,3rem);margin:1.875rem 0 0;border-top:var(--border)}
.phase11-company-facts>div{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:1rem 0;border-bottom:var(--border)}
.phase11-company-facts dt{margin-bottom:.35rem;color:var(--color-muted);font-size:.8rem;font-weight:700}
.phase11-company-facts dd{margin:0;color:var(--color-charcoal);font-size:1rem;font-weight:600;line-height:1.45;overflow-wrap:anywhere}
.phase11-company-facts address{font:inherit;font-style:normal}.phase11-company-facts a{display:inline-flex;align-items:center;min-height:44px;color:var(--color-deep-green);text-decoration-thickness:1px;text-underline-offset:.2em}
@media(max-width:540px){.phase11-company-facts{grid-template-columns:1fr}.phase11-company-heading p{max-width:26ch}.phase11-company-heading .brand-graphic{display:none}}

.brand-graphic { width:100%; max-width:27.5rem; height:100%; min-height:0; aspect-ratio:auto; }
.brand-graphic { position:relative; width:min(100%,27rem); aspect-ratio:1.12; justify-self:end; border:1px solid rgba(14,92,79,.18); border-radius:var(--radius-lg); background:linear-gradient(140deg,#e5f0ed 0%,#f5f6f4 62%,#d9efef 100%); overflow:hidden; animation:hero-enter .48s .06s ease-out both; }
.brand-graphic__plane { position:absolute; inset:18% 12% 13% 17%; border:1px solid rgba(17,20,23,.16); border-radius:52% 48% 42% 58%; transform:rotate(-12deg); }
.brand-graphic__ring { position:absolute; top:16%; right:15%; width:46%; aspect-ratio:1; border:clamp(.65rem,1.5vw,1rem) solid var(--color-deep-green); border-radius:50%; }
.brand-graphic__arc { position:absolute; bottom:-16%; left:-5%; width:72%; aspect-ratio:1; border:clamp(.55rem,1.1vw,.82rem) solid var(--color-muted-teal); border-radius:50%; }
.brand-graphic__line { position:absolute; width:44%; height:1px; background:var(--color-charcoal); opacity:.32; transform-origin:left; }
.brand-graphic__line--one { top:48%; left:23%; transform:rotate(-35deg); }
.brand-graphic__line--two { top:60%; left:34%; width:35%; transform:rotate(38deg); }
.brand-graphic__point { position:absolute; right:23%; bottom:24%; width:1rem; aspect-ratio:1; border-radius:50%; background:var(--color-copper); box-shadow:0 0 0 .45rem rgba(184,115,74,.14); }

.phase11-contact-details>div{display:grid;gap:.65rem;margin-top:1.25rem}.phase11-contact-details>div a{display:inline-flex;width:fit-content;align-items:center;gap:.55rem;margin:0;color:var(--color-deep-green);font-weight:750}
@media(max-width:900px){.phase11-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.phase11-contact-grid article:last-child{grid-column:1/-1}}
@media(max-width:767px){.phase11-shell{width:min(100% - 2rem,1080px)}.phase11-hero{grid-template-columns:1fr;gap:2rem;padding:2.5rem 0}.phase11-hero h1{max-width:none}.phase11-graphic{width:min(100%,18rem);min-height:17rem;margin-inline:auto}.phase11-contact-grid{grid-template-columns:1fr}.phase11-contact-grid article:last-child{grid-column:auto}.phase11-contact-grid article{min-height:auto}.phase11-contact-grid a,.phase11-contact-grid button{margin-top:1rem}.phase11-contact-cta{grid-template-columns:1fr;padding:1.5rem}.phase11-contact-cta .button{width:100%}}
