/* Atro Vuolle – Yhteystiedot-sivu (konsepti A1: kortit ja kartta). Ladataan style.css:n jälkeen. */

.crumbs ol{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;font-size:.8125rem;color:#c9d2db}
.crumbs li+li::before{content:"/";margin-right:.5rem;opacity:.5}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs [aria-current]{color:#fff}

/* Pääbanneri */
.yhero{position:relative;isolation:isolate;display:grid;align-items:end;min-height:22rem}
.yhero picture{display:contents}
.yhero__img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:60% 60%}
.yhero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgb(13 27 42 / .9),rgb(13 27 42 / .3) 60%),linear-gradient(90deg,rgb(13 27 42 / .7),transparent 60%)}
.yhero__text{padding-block:3rem 7rem}
.yhero h1{margin-top:1rem;font-size:clamp(2.6rem,1.8rem + 3vw,4.2rem)}
.yhero__lead{max-width:36rem;margin-top:.8rem;font-size:1.0625rem;color:#d9e0e7}

/* Yhteydenottokortit */
.ycards{position:relative;z-index:2;display:grid;gap:1.25rem;margin-top:-4.5rem}
@media (min-width:52em){.ycards{grid-template-columns:repeat(3,1fr)}}
.ycard{display:flex;flex-direction:column;padding:1.75rem;border-radius:1rem;background:#fff;box-shadow:0 1.5rem 3rem -1.5rem rgb(13 27 42 / .4);text-decoration:none;transition:transform .2s var(--ease),box-shadow .2s}
.ycard:hover{transform:translateY(-2px);box-shadow:0 1.75rem 3rem -1.5rem rgb(13 27 42 / .5)}
.ycard__ico{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:.8rem;background:var(--navy);color:var(--gold-2)}
.ycard__ico .i{width:1.5rem;height:1.5rem}
.ycard h2{margin-top:1.1rem;font-size:1.35rem;color:var(--navy)}
.ycard__big{margin-top:.4rem;font:500 1.6rem/1.2 var(--serif);color:var(--navy);overflow-wrap:anywhere}
.ycard__big--sm{font:600 1.05rem/1.4 var(--sans)}
.ycard p{margin-top:.5rem;font-size:.9rem;color:var(--muted)}
.ycard__go{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;padding-top:1.25rem;font-weight:600;color:#8a6420}
.ycard--gold{background:var(--gold)}
.ycard--gold p{color:#3d3220}
.ycard--gold .ycard__go{color:var(--navy)}

/* Toimipaikka + kartta */
.ysec{padding-block:clamp(3rem,6vw,5rem)}
.yloc{display:grid;gap:2.5rem;align-items:start}
@media (min-width:52em){.yloc{grid-template-columns:5fr 6fr}}
.kick{font:600 .72rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#8a6420}
.yloc h2{margin-top:.9rem;font-size:clamp(1.8rem,1.4rem + 1.2vw,2.4rem)}
.yloc dl{display:grid;gap:1.1rem;margin-top:1.75rem}
.yloc dt{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.yloc dd{margin:.2rem 0 0;font-weight:500;color:var(--navy)}
.yloc dd a{color:var(--navy)}
.yloc__areas{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.yloc__areas strong{color:var(--navy)}
.ysoc{display:flex;gap:.6rem;margin-top:1.5rem;padding:0;list-style:none}
.ysoc a{display:grid;place-items:center;width:2.6rem;height:2.6rem;border:1px solid var(--line);border-radius:999px;color:var(--navy)}
.ysoc a:hover{border-color:var(--gold)}

.ymap{position:relative;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:1rem;background:#d9e5ee}
.ymap img{display:block;width:100%;height:auto;aspect-ratio:620/820}
.ymap figcaption{position:absolute;left:1rem;bottom:1rem;display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;border-radius:.6rem;background:rgb(255 255 255 / .92);font-size:.78rem;color:var(--navy);box-shadow:0 .5rem 1rem -.5rem rgb(13 27 42 / .3)}
.ymap figcaption::before{content:"";width:.55rem;height:.55rem;border-radius:999px;background:var(--navy);box-shadow:0 0 0 2px #fff}
@media (max-width:30em){.ymap figcaption{left:.6rem;right:.6rem;bottom:.6rem;font-size:.72rem}}

/* Lupaukset */
.yband{background:var(--surface)}
.yband ul{display:grid;gap:1.5rem 2rem;padding-block:2.5rem;list-style:none}
@media (min-width:52em){.yband ul{grid-template-columns:repeat(3,1fr)}}
.yband .i{width:1.6rem;height:1.6rem;margin-bottom:.6rem;color:#8a6420}
.yband strong{display:block;color:var(--navy)}
.yband span{font-size:.9rem;color:var(--muted)}

/* Palaute: matalampi prioriteetti kuin tarjouspyynnöllä */
.yfeed{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;margin-top:1.25rem;padding:1rem 1.25rem;border:1px solid var(--line);border-radius:.8rem;font-size:.9rem;color:var(--muted)}
.yfeed strong{margin-right:.6rem;color:var(--navy)}
.yfeed a{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--navy)}
.yfeed .i{width:1rem;height:1rem}
