:root{
 --ov-cream:#f5f0e5;
 --ov-paper:#fbf8f1;
 --ov-ink:#293228;
 --ov-green:#405a43;
 --ov-muted:#74786f;
 --ov-line:#d9d0c0;
}
html{scroll-behavior:smooth}
.oma-ov{width:100%;max-width:none;margin:0;background:var(--ov-paper);color:var(--ov-ink);font-family:Georgia,"Times New Roman",serif;line-height:1.7}
.oma-ov *{box-sizing:border-box}
.oma-olin-vaarassa-page section.oma-hero.oma-page-hero{display:none!important}
.oma-olin-vaarassa-page section.content-section{padding:0!important;margin:0!important}
.oma-olin-vaarassa-page section.content-section>article.content-wrap{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}

.oma-ov-hero{position:relative;min-height:88vh;display:flex;align-items:center;background:url("olin-vaarassa-hero.png") center/cover no-repeat;overflow:hidden}
.oma-ov-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,35,28,.80) 0%,rgba(28,35,28,.66) 34%,rgba(28,35,28,.16) 62%,rgba(28,35,28,0) 78%)}
.oma-ov-hero__content{position:relative;z-index:2;width:min(720px,92%);padding:7vh 4vw 8vh 7vw;color:#fffaf0;text-shadow:0 1px 12px rgba(0,0,0,.15)}
.oma-ov-eyebrow,.oma-ov-small{font-family:Arial,sans-serif;font-size:.78rem!important;font-weight:700;letter-spacing:.19em}
.oma-ov-hero h1{margin:8px 0 14px;font-size:clamp(4rem,7vw,7.5rem);font-weight:400;line-height:.82;letter-spacing:-.025em}
.oma-ov-lead{font-size:clamp(1.5rem,2.3vw,2.3rem)!important;font-style:italic}
.oma-ov-rule{display:flex;align-items:center;gap:14px;width:210px;margin:18px 0 27px}
.oma-ov-rule:before{content:"";height:1px;flex:1;background:rgba(255,255,255,.55)}
.oma-ov-hero__content p{max-width:560px;margin:0 0 15px;font-size:1.08rem}
.oma-ov-emphasis{margin-top:24px!important;font-size:1.45rem!important;font-style:italic}
.oma-ov-button{display:inline-flex;gap:36px;align-items:center;margin-top:8px;padding:14px 23px;border:1px solid rgba(255,255,255,.7);border-radius:999px;color:white!important;text-decoration:none!important;font-family:Arial,sans-serif;font-size:.78rem;letter-spacing:.12em}
.oma-ov-button:hover{background:rgba(255,255,255,.12)}

.oma-ov-prose{max-width:820px;margin:0 auto;padding:105px 7vw}
.oma-ov-prose p{font-size:1.22rem;margin:0 0 24px}
.oma-ov-drop{font-size:clamp(1.8rem,3vw,2.8rem)!important;line-height:1.3!important;color:var(--ov-green)}

.oma-ov-statement{padding:105px 7vw;background:var(--ov-cream)}
.oma-ov-statement>div{max-width:900px;margin:auto;text-align:center}
.oma-ov-small{color:var(--ov-muted);margin:0 0 15px}
.oma-ov-statement h2,.oma-ov-beliefs h2,.oma-ov-question h2,.oma-ov-ending h2{font-size:clamp(2.6rem,5vw,5rem);font-weight:400;line-height:1.05;margin:0 0 30px}
.oma-ov-statement p{max-width:720px;margin:16px auto;font-size:1.18rem}
.oma-ov blockquote{margin:38px auto;padding:0;border:0;font-size:clamp(2rem,4vw,3.7rem);font-style:italic;line-height:1.15;color:var(--ov-green)}

.oma-ov-beliefs{padding:105px 6vw;max-width:1500px;margin:auto}
.oma-ov-beliefs__intro{text-align:center;max-width:760px;margin:0 auto 58px}
.oma-ov-beliefs__intro p:last-child{font-size:1.15rem;color:var(--ov-muted)}
.oma-ov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.oma-ov-grid article{min-height:270px;padding:30px;border:1px solid var(--ov-line);background:#fffdf8;border-radius:10px}
.oma-ov-grid span{font-family:Arial,sans-serif;font-size:.75rem;color:var(--ov-muted);letter-spacing:.12em}
.oma-ov-grid h3{font-size:1.5rem;font-weight:400;line-height:1.25;margin:30px 0 18px;color:var(--ov-green)}
.oma-ov-grid p{color:var(--ov-muted);margin:0}
.oma-ov-good{text-align:center;margin:65px 0 0;font-size:2rem;line-height:1.4}

.oma-ov-question{padding:110px 7vw;background:#314234;color:#f8f2e6;text-align:center}
.oma-ov-question>div{max-width:850px;margin:auto}
.oma-ov-question .oma-ov-small{color:#d2cbbf}
.oma-ov-question p{font-size:1.18rem}
.oma-ov-question blockquote{color:#f8f2e6}
.oma-ov-question blockquote strong{font-weight:400}

.oma-ov-ending{position:relative;padding:120px 7vw;background:var(--ov-paper);text-align:center}
.oma-ov-ending>div{max-width:760px;margin:auto}
.oma-ov-ending p{font-size:1.2rem}
.oma-ov-ending__rule{margin:44px auto;color:var(--ov-green);font-size:1.4rem}
.oma-ov-ending h2{margin-top:55px;color:var(--ov-green)}
.oma-ov-last{font-size:1.5rem!important;font-style:italic;color:var(--ov-muted)}

@media(max-width:900px){
 .oma-ov-grid{grid-template-columns:repeat(2,1fr)}
 .oma-ov-hero__shade{background:linear-gradient(90deg,rgba(28,35,28,.82),rgba(28,35,28,.45) 70%,rgba(28,35,28,.12))}
}
@media(max-width:640px){
 .oma-ov-hero{min-height:90vh;background-position:58% center}
 .oma-ov-hero__shade{background:linear-gradient(180deg,rgba(28,35,28,.80) 0%,rgba(28,35,28,.63) 62%,rgba(28,35,28,.22) 100%)}
 .oma-ov-hero__content{padding:8vh 7vw 14vh}
 .oma-ov-hero h1{font-size:3.8rem}
 .oma-ov-grid{grid-template-columns:1fr}
 .oma-ov-prose,.oma-ov-statement,.oma-ov-beliefs,.oma-ov-question,.oma-ov-ending{padding-left:7vw;padding-right:7vw}
}


/* 1.1 — richer "Minä luulin, että..." cards */
.oma-ov-grid{
  align-items:stretch;
}
.oma-ov-grid .oma-ov-card{
  position:relative;
  min-height:410px;
  display:flex;
  flex-direction:column;
  padding:34px 32px 30px;
  overflow:hidden;
  border:1px solid var(--ov-line);
  border-radius:12px;
  background:
    linear-gradient(180deg,rgba(255,253,248,.98),rgba(248,244,235,.98));
  box-shadow:0 12px 32px rgba(41,50,40,.045);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.oma-ov-grid .oma-ov-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:3px;
  background:var(--ov-green);
  opacity:.55;
}
.oma-ov-grid .oma-ov-card:hover{
  transform:translateY(-4px);
  border-color:rgba(64,90,67,.38);
  box-shadow:0 18px 40px rgba(41,50,40,.085);
}
.oma-ov-card__number{
  position:absolute;
  top:24px;
  right:28px;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:2.6rem!important;
  line-height:1;
  color:rgba(64,90,67,.14)!important;
  letter-spacing:0!important;
}
.oma-ov-card__label{
  margin:0 0 30px!important;
  padding-right:54px;
  font-family:Arial,sans-serif;
  font-size:.7rem!important;
  font-weight:700;
  letter-spacing:.16em;
  color:var(--ov-muted)!important;
}
.oma-ov-grid .oma-ov-card h3{
  margin:0 0 18px;
  font-size:clamp(1.45rem,2vw,1.8rem);
  color:var(--ov-green);
}
.oma-ov-card__thought{
  margin:0 0 26px!important;
  color:var(--ov-ink)!important;
  font-size:1.02rem;
}
.oma-ov-card__turn{
  margin-top:auto;
  padding-top:22px;
  border-top:1px solid var(--ov-line);
}
.oma-ov-card__turn span{
  display:block;
  margin-bottom:8px;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.18rem!important;
  font-style:italic;
  letter-spacing:0!important;
  color:var(--ov-green)!important;
}
.oma-ov-card__turn p{
  margin:0!important;
  color:var(--ov-muted)!important;
  font-size:.96rem;
  line-height:1.6;
}
@media(max-width:640px){
  .oma-ov-grid .oma-ov-card{
    min-height:auto;
    padding:30px 26px 27px;
  }
}


/* 1.2 — Olin väärässä invitations */
.oma-ov-invitation{
  width:min(1320px,88vw);
  margin:84px auto;
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);
  min-height:480px;
  overflow:hidden;
  border:1px solid var(--ov-line);
  border-radius:14px;
  background:#f7f2e8;
  color:var(--ov-ink);
  font-family:Georgia,"Times New Roman",serif;
  box-shadow:0 18px 50px rgba(41,50,40,.06);
}
.oma-ov-invitation__image{
  min-height:100%;
  background:
    linear-gradient(90deg,rgba(41,50,40,.05),rgba(41,50,40,0)),
    url("olin-vaarassa-hero.png") center/cover no-repeat;
}
.oma-ov-invitation__content{
  align-self:center;
  padding:58px clamp(34px,5vw,76px);
}
.oma-ov-invitation__eyebrow{
  margin:0 0 13px!important;
  font-family:Arial,sans-serif;
  font-size:.72rem!important;
  font-weight:700;
  letter-spacing:.18em;
  color:var(--ov-muted)!important;
}
.oma-ov-invitation h2{
  margin:0 0 22px;
  font-size:clamp(2.6rem,4vw,4.6rem);
  line-height:1;
  font-weight:400;
  color:var(--ov-green);
}
.oma-ov-invitation__content>p:not(.oma-ov-invitation__eyebrow){
  font-size:1.08rem;
  line-height:1.75;
}
.oma-ov-invitation__line{
  margin:25px 0!important;
  font-size:1.35rem!important;
  color:var(--ov-green);
}
.oma-ov-invitation a{
  display:inline-flex;
  align-items:center;
  gap:18px;
  padding:12px 20px;
  border:1px solid var(--ov-green);
  border-radius:999px;
  color:var(--ov-green)!important;
  text-decoration:none!important;
  transition:.2s ease;
}
.oma-ov-invitation a:hover{
  background:var(--ov-green);
  color:#fff!important;
}
.oma-ov-invitation--compact{
  min-height:350px;
  margin-top:64px;
  margin-bottom:64px;
}
.oma-ov-invitation--compact .oma-ov-invitation__content{
  padding-top:42px;
  padding-bottom:42px;
}
@media(max-width:760px){
  .oma-ov-invitation{
    width:86vw;
    grid-template-columns:1fr;
    margin:58px auto;
  }
  .oma-ov-invitation__image{min-height:260px}
  .oma-ov-invitation__content{padding:38px 28px 42px}
}

/* Footer item created by the plugin */
.oma-ov-footer-item a{
  text-decoration:none;
}


/* 1.3 — hero readability correction.
   Keep the photograph alive, but create a calm dark reading field on the left. */
.oma-ov-hero__shade{
  background:
    linear-gradient(
      90deg,
      rgba(17,24,18,.92) 0%,
      rgba(17,24,18,.84) 30%,
      rgba(17,24,18,.61) 48%,
      rgba(17,24,18,.22) 67%,
      rgba(17,24,18,0) 82%
    ) !important;
}
.oma-ov-hero__content{
  color:#fffdf5 !important;
  text-shadow:0 2px 12px rgba(0,0,0,.42) !important;
}
.oma-ov-hero h1{
  color:#fffdf5 !important;
  text-shadow:0 2px 18px rgba(0,0,0,.38) !important;
}
.oma-ov-hero__lead,
.oma-ov-hero .oma-ov-eyebrow,
.oma-ov-hero .oma-ov-emphasis,
.oma-ov-hero__content p{
  color:#fffdf5 !important;
}
.oma-ov-rule:before{
  background:rgba(255,253,245,.72) !important;
}
.oma-ov-rule span{
  color:#fffdf5 !important;
}
@media(max-width:900px){
  .oma-ov-hero__shade{
    background:
      linear-gradient(
        90deg,
        rgba(17,24,18,.93) 0%,
        rgba(17,24,18,.80) 50%,
        rgba(17,24,18,.35) 78%,
        rgba(17,24,18,.08) 100%
      ) !important;
  }
}
@media(max-width:640px){
  .oma-ov-hero__shade{
    background:
      linear-gradient(
        180deg,
        rgba(17,24,18,.88) 0%,
        rgba(17,24,18,.76) 63%,
        rgba(17,24,18,.34) 100%
      ) !important;
  }
}


/* 1.4 — fix Finnish diacritics in the giant hero heading.
   Use a robust system serif stack for the title only. */
.oma-ov-hero h1{
  font-family:
    "Times New Roman",
    "Liberation Serif",
    "DejaVu Serif",
    Georgia,
    serif !important;
  font-variant-ligatures:none;
  font-feature-settings:"liga" 0,"kern" 1;
  letter-spacing:-0.02em !important;
}


/* 1.5 — top-of-Tarinat treatment: visible early, but still a secondary doorway. */
.oma-ov-invitation--compact{
  margin-top:48px;
  margin-bottom:72px;
}
@media(max-width:640px){
  .oma-ov-invitation--compact{
    margin-top:32px;
    margin-bottom:52px;
  }
}


/* 1.6 — give Ä/Ö diacritics enough vertical room between hero title lines.
   Typography and sizing stay otherwise unchanged. */
.oma-ov-hero h1{
  line-height:1.12 !important;
}
