/* Photo Contest Official Rules (cms/rules_v2). */
.or2{--forest:#1E3A26;--deep:#16301E;--leaf:#8DB47A;--sage:#EEF3EA;--sage2:#E4ECDF;--line:#D8DFD2;--ink:#1F241D;--muted:#4f544b;color:var(--ink);font:16px/1.6 Figtree,Arial,sans-serif;background:#FBFAF6;padding-bottom:56px}
.or2-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.or2 h1,.or2 h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;margin:0;color:var(--deep)}
.or2 p{margin:0}
.or2 a{color:var(--forest)}

.or2-hero{background:var(--deep);color:#fff;padding:30px 0 26px;position:relative;overflow:hidden}
.or2-grove{position:absolute;right:max(24px,calc((100vw - 1240px)/2 + 40px));bottom:0;display:flex;align-items:flex-end;gap:16px;pointer-events:none}
.or2-grove img{display:block;width:auto}
.or2-grove img:nth-child(1){height:78px;opacity:.28}
.or2-grove img:nth-child(2){height:121px;opacity:.6}
.or2-grove img:nth-child(3){height:96px;opacity:.4}
.or2-grove img:nth-child(4){height:64px;opacity:.24}
@media (max-width:760px){.or2-grove{display:none}}
.or2-hero h1{color:#fff;font-size:clamp(44px,5vw,68px);line-height:1;display:inline-block;padding-bottom:8px;border-bottom:2px solid var(--leaf)}
.or2-hero p{margin-top:10px;font:500 clamp(20px,2vw,28px) 'Cormorant Garamond',Georgia,serif}

.or2-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start;margin-top:22px}
.or2-toc{position:sticky;top:100px;padding:16px 12px;border:1px solid var(--line);border-radius:6px;background:#fff}
.or2-toc h2{font-size:22px;margin:0 6px 10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.or2-toc nav{display:flex;flex-direction:column}
.or2-toc a{padding:6px 8px;border-radius:4px;font-size:15px;color:var(--ink);text-underline-offset:3px}
.or2-toc a:hover,.or2-toc a.is-on{background:var(--sage2);text-decoration:none}

.or2-main{display:flex;flex-direction:column;gap:18px;min-width:0}
.or2-main h2{font-size:28px;line-height:1.15;padding-bottom:6px;border-bottom:1px solid var(--line);margin-bottom:10px}
.or2-main p{font-size:15px;color:var(--muted)}
.or2 [id]{scroll-margin-top:110px}

.or2-notice{display:flex;gap:22px;padding:18px 24px;background:var(--sage);border-left:5px solid var(--forest);border-radius:4px;color:var(--deep)}
.or2-notice h2{font:600 17px Figtree,sans-serif;letter-spacing:.02em;text-transform:uppercase;border:0;padding:0;margin-bottom:6px}
.or2-notice svg{flex:none;margin-top:2px}

.or2-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.or2-card{display:flex;gap:18px;padding:18px 20px;border:1px solid var(--line);border-radius:6px;background:#fff}
.or2-ico{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--sage2);color:var(--deep)}
.or2-ico.plain{background:none;width:32px}
.or2-sec{display:flex;gap:20px;padding:4px 0}
.or2-sec > div,.or2-card > div,.or2-foot section > div{flex:1;min-width:0}
.or2-sec.is-soft{padding:18px 20px;background:var(--sage);border-radius:6px}
.or2-sec em strong,.or2-sec strong em{color:var(--ink)}

.or2-foot{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--leaf);padding-top:18px;margin-top:4px}
.or2-foot section{display:flex;gap:14px;padding:0 20px}
.or2-foot section + section{border-left:1px solid var(--line)}
.or2-foot h2{border:0;padding:0;margin-bottom:4px}

@media (max-width:900px){.or2-layout{grid-template-columns:1fr}.or2-toc{position:static}.or2-toc nav{flex-direction:row;flex-wrap:wrap;gap:4px}.or2-cards,.or2-foot{grid-template-columns:1fr}.or2-foot section + section{border-left:0;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}}
@media (max-width:560px){.or2-wrap{padding:0 16px}.or2-sec{flex-direction:column;gap:8px}.or2-notice{flex-direction:column;gap:10px;padding:16px}}
