@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--ink:#1b2932;--forest:#526b56;--moss:#77927a;--paper:#f5f5f0;--white:#fff;--line:#d9ded8;--gold:#c5a974;--muted:#52616a;--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.65 "DM Sans",system-ui,sans-serif}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:"Manrope",system-ui,sans-serif;letter-spacing:-.045em;line-height:1.14}
h1{font-size:clamp(3rem,5.8vw,5.9rem);font-weight:700}
h2{font-size:clamp(2.1rem,3.5vw,3.7rem);font-weight:650}
h3{font-size:1.45rem;font-weight:650}
p{max-width:65ch}
a{color:inherit}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.skip-link{position:absolute;left:1rem;top:-5rem;background:#fff;padding:.6rem 1rem;z-index:100}
.skip-link:focus{top:1rem}
.site-header{background:rgba(245,245,240,.96);border-bottom:1px solid var(--line);position:relative;z-index:10}
.header-inner{max-width:1480px;margin:auto;padding:0 clamp(1.2rem,4vw,4rem);min-height:91px;display:flex;gap:1.5rem;align-items:center}
.brand{text-decoration:none;display:flex;align-items:center;gap:.55rem;white-space:nowrap;margin-right:auto}
.brand-logo{display:block;width:44px;height:44px;object-fit:contain;flex-shrink:0}
.brand-name{font-family:"Manrope",sans-serif;font-size:1.18rem;line-height:.95;font-weight:800;letter-spacing:-.065em}
.brand-name span{display:block;font-size:.6rem;letter-spacing:.13em;text-transform:uppercase;margin-top:.38em;font-weight:600}
.desktop-nav{display:flex;align-items:center;gap:clamp(.5rem,1vw,1.2rem);font-size:.82rem;font-weight:600}
.desktop-nav a{text-decoration:none;white-space:nowrap;padding:.45rem .3rem;border-bottom:2px solid transparent;border-radius:4px 4px 0 0;transition:background-color .4s ease}
.desktop-nav a:hover,.desktop-nav a:focus-visible{background-color:#e0e8dd}
.desktop-nav a[aria-current="page"]{border-bottom-color:var(--forest)}
.header-contact{border:1px solid var(--ink);border-radius:999px;padding:.65rem 1.15rem;text-decoration:none;font-size:.85rem;font-weight:700;white-space:nowrap}
.header-contact:hover{background:var(--ink);color:#fff}
.mobile-menu{display:none}
.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.7rem;font-weight:700;color:var(--forest)}
.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:.91rem 1.45rem;border-radius:2px;font-weight:700;line-height:1.3;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px);background:#34434d}
.button-light{background:#fff;color:var(--ink);border-color:#fff}
.button-light:hover{background:#e6e8e1}
.underlined{font-weight:700;text-decoration-thickness:1px;text-underline-offset:.3em}
.text-link{text-decoration:none;border-bottom:1px solid currentColor;display:inline-block;padding-bottom:.12rem;font-weight:700;font-size:.94rem}
.text-link:hover{color:var(--forest)}
.lead{font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.55;color:#40505a;max-width:54ch}
.hero{min-height:650px;display:grid;grid-template-columns:1.14fr .86fr;max-width:1480px;margin:auto}
.hero-copy{padding:clamp(4.5rem,9vw,9rem) clamp(1.2rem,5vw,5.8rem) 5rem clamp(1.2rem,5vw,5.8rem)}
.home-hero h1{max-width:11ch;margin:1.3rem 0 1.8rem}
.botanical{position:relative;overflow:hidden}
.botanical::after{content:"";position:absolute;right:-2rem;bottom:-2rem;width:300px;height:300px;opacity:.12;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300' fill='none' stroke='%23526b56' stroke-width='3'%3E%3Cpath d='M265 285C230 215 180 152 92 65M210 215c16-35 37-53 65-65M169 166c7-36 24-62 50-79M126 119c-2-30 7-54 28-76M214 216c-38 0-65 12-83 34M170 168c-38 2-65 15-81 39M127 120c-34 4-56 17-70 38'/%3E%3Cellipse cx='252' cy='151' rx='22' ry='10' transform='rotate(-35 252 151)'/%3E%3Cellipse cx='201' cy='84' rx='22' ry='10' transform='rotate(-50 201 84)'/%3E%3Cellipse cx='145' cy='43' rx='20' ry='9' transform='rotate(-70 145 43)'/%3E%3Cellipse cx='132' cy='248' rx='22' ry='10' transform='rotate(-15 132 248)'/%3E%3Cellipse cx='88' cy='205' rx='22' ry='10' transform='rotate(-20 88 205)'/%3E%3Cellipse cx='59' cy='157' rx='20' ry='9' transform='rotate(-25 59 157)'/%3E%3C/svg%3E") center/contain no-repeat}
.botanical>*{position:relative;z-index:1}
h1 em{font-style:normal;color:var(--forest)}
.hero-actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;margin-top:2.3rem}
.hero-art{background:var(--ink);padding:4.5rem;display:grid;place-items:center;min-height:590px;overflow:hidden}
.art-frame{width:min(100%,520px);aspect-ratio:1;display:grid;place-items:center;position:relative;border:1px solid rgba(255,255,255,.18);transform:rotate(-5deg);background:radial-gradient(circle at 25% 15%,#fafbf6 0,#edf2e9 75%)}
.art-frame::after{content:"";position:absolute;inset:1rem;border:1px solid rgba(198,169,116,.26);pointer-events:none}
.art-frame img{width:84%;height:84%;object-fit:contain;transform:rotate(5deg);filter:drop-shadow(0 20px 24px rgba(0,0,0,.15))}
.art-frame span{position:absolute;bottom:1.6rem;left:1.8rem;color:var(--ink);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;transform:rotate(5deg)}
.intro-grid{max-width:var(--max);margin:auto;padding:7rem 2rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end}
.intro-grid h2{max-width:12ch;margin:1.2rem 0 0}
.intro-grid p{font-size:1.2rem;line-height:1.7;color:var(--muted);margin:0}
.landscape-break{max-width:1480px;height:360px;margin:0 auto 5rem;position:relative;overflow:hidden;background:var(--ink)}
.landscape-break img{width:100%;height:100%;object-fit:cover;object-position:center 58%;opacity:.78}
.landscape-break::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,35,43,.82),rgba(19,35,43,.05) 65%)}
.landscape-break>div{position:absolute;z-index:1;left:max(2rem,calc((100% - 1176px)/2));bottom:2.6rem;color:#fff}
.landscape-break .eyebrow{color:#c6d4c7}
.landscape-break p{font-family:"Manrope",sans-serif;font-size:clamp(1.4rem,2.5vw,2.4rem);font-weight:600;line-height:1.3;max-width:19ch;margin:.6rem 0 0}
.home-shepherds{max-width:var(--max);margin:0 auto 5rem;padding:4rem 2rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-shepherds-heading h2{margin:1rem 0;max-width:13ch}
.home-shepherds-heading p{font-size:1.1rem;color:var(--muted)}
.home-shepherds-list{display:flex;flex-direction:column;justify-content:center}
.home-shepherds-list>a{display:flex;align-items:center;gap:1rem;padding:1.25rem 0;text-decoration:none;border-bottom:1px solid var(--line)}
.home-shepherds-list>a:first-child{border-top:1px solid var(--line)}
.home-shepherds-list>a>span:last-child{margin-left:auto;color:var(--forest)}
.home-shepherds-list strong,.home-shepherds-list small{display:block}
.home-shepherds-list small{color:var(--muted);font-size:.82rem}
.mini-initial{width:54px;height:54px;flex:none;background:var(--ink);color:#b7c9b8;display:grid;place-items:center;font:2rem Georgia,serif}
.home-shepherds-list>a:nth-child(2) .mini-initial{background:var(--forest);color:#f2f5ef}
.section{max-width:var(--max);margin:auto;padding:6rem 2rem}
.section-heading{max-width:760px;margin-bottom:3rem}
.section-heading h2{margin:1.1rem 0}
.section-heading p{font-size:1.1rem;color:var(--muted)}
.services{border-top:1px solid var(--line)}
body[data-page="home"] .services>.section-heading{position:relative;isolation:isolate;overflow:hidden;max-width:none;padding:3.5rem 18rem 3.5rem 3rem;background:#e8eee2;border:1px solid #c8d3c1;border-left:4px solid var(--forest);border-radius:6px;margin-bottom:2.5rem}
body[data-page="home"] .services>.section-heading::before,body[data-page="home"] .services>.section-heading::after{content:"";position:absolute;z-index:-1;background-size:contain;background-repeat:no-repeat;pointer-events:none}
body[data-page="home"] .services>.section-heading::before{background-image:url("/assets/nature-0.webp");width:300px;height:300px;right:-1.5rem;top:-1rem;opacity:.24;transform:rotate(-12deg)}
body[data-page="home"] .services>.section-heading::after{background-image:url("/assets/nature-3.webp");width:180px;height:180px;left:-3rem;bottom:-5rem;opacity:.12;transform:rotate(18deg)}
body[data-page="home"] .services>.section-heading>.eyebrow{display:inline-block;background:var(--forest);color:#fff;padding:.5rem .85rem;border-radius:3px;letter-spacing:.16em;font-size:.85rem}
body[data-page="home"] .services>.section-heading h2{color:var(--forest);font-size:clamp(2rem,4vw,3.25rem);line-height:1.15;max-width:22ch;margin:1.35rem 0 1.2rem}
body[data-page="home"] .services>.section-heading p{max-width:58ch;margin-bottom:0;color:var(--ink)}
@media(max-width:850px){body[data-page="home"] .services>.section-heading{padding:3rem 2rem}body[data-page="home"] .services>.section-heading::before{width:220px;height:220px;right:-2.5rem;top:-2rem;opacity:.13}}
@media(max-width:560px){body[data-page="home"] .services>.section-heading{padding:2.5rem 1.5rem}body[data-page="home"] .services>.section-heading::before{width:190px;height:190px;right:-2.5rem;top:-1rem}body[data-page="home"] .services>.section-heading::after{width:140px;height:140px;left:-2.5rem;bottom:-3rem}}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.service-card{background:#fff;min-height:370px;padding:2.1rem;display:flex;flex-direction:column;border:1px solid #e7e9e4;transition:transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(25,39,41,.08)}
.card-top{display:flex;align-items:center;gap:1.1rem;color:var(--forest);font-weight:700;font-size:.8rem;margin-bottom:4rem}
.card-line{height:1px;background:var(--line);flex:1}
.service-card h3{margin-bottom:.8rem}
.service-card p{color:var(--muted);margin-bottom:2rem}
.service-card .text-link{align-self:flex-start;margin-top:auto}
.split-feature{background:#dfe7dc;max-width:1480px;margin:0 auto;display:grid;grid-template-columns:.5fr 1.5fr;gap:3rem;padding:5rem clamp(2rem,9vw,9rem);align-items:center}
.feature-mark{font-family:Georgia,serif;font-size:22rem;line-height:.65;color:#a6b7a3;align-self:center}
.split-feature p{font-size:1.15rem;color:#45594b}
.ripari-teaser{max-width:var(--max);margin:6rem auto;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;gap:4rem;padding:3rem 2rem}
.ripari-teaser h2{max-width:15ch;margin:1rem 0}
.ripari-teaser p{font-size:1.1rem;color:var(--muted)}
.theme-stamp{width:260px;height:260px;border:1px solid var(--forest);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:.6rem;transform:rotate(-8deg);color:var(--forest);margin:auto}
.theme-stamp strong{font:600 6.6rem/1 "Manrope",sans-serif;letter-spacing:-.1em}
.theme-stamp span{font-size:.88rem;line-height:1.25;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.theme-stamp-131{width:300px;height:300px;flex-direction:column;gap:.7rem;transform:rotate(-5deg);padding:1.2rem}
.theme-stamp-131 .stamp-number{display:flex;align-items:baseline;gap:0;font-size:6.8rem;letter-spacing:-.07em;line-height:1;white-space:nowrap;margin-bottom:1.7rem}
.theme-stamp-131 .stamp-value{position:relative;font:inherit;letter-spacing:inherit;text-transform:none}
.theme-stamp-131 .stamp-divider{font:inherit;font-size:.72em;letter-spacing:0;margin:0 .015em}
.theme-stamp-131 small{position:absolute;left:50%;top:calc(100% + .8rem);transform:translateX(-50%);font:700 .78rem/1.25 "Manrope",sans-serif;letter-spacing:.06em;white-space:nowrap}
.ripari-love{max-width:1100px;margin:0 auto 4rem;padding:2.5rem 3rem;border-left:3px solid var(--forest);background:rgba(83,108,87,.055)}
.ripari-love h2{font-size:clamp(1.8rem,3vw,2.6rem);max-width:25ch}
.ripari-love p{max-width:75ch}
@media(max-width:560px){.theme-stamp-131{width:260px;height:260px}.theme-stamp-131 .stamp-number{font-size:5.6rem}.theme-stamp-131 small{font-size:.7rem}.ripari-love{margin:0 1.4rem 3rem;padding:2rem 1.3rem}}
.contact-band{background:#405944;color:#fff;padding:5.5rem max(2rem,calc((100vw - 1176px)/2));display:flex;align-items:center;justify-content:space-between;gap:3rem;border-bottom:1px solid rgba(255,255,255,.25)}
.contact-band .eyebrow{color:#d3e0d0}
.contact-band h2{max-width:13ch;margin:1rem 0}
.contact-band p{color:#eef3eb;margin:0}
.contact-band .button{flex:none}
.button-icon{width:1.2em;height:1.2em;margin-right:.6em;flex-shrink:0;vertical-align:middle}
.mission-rock{margin:2rem 0 0}
.mission-rock img{display:block;width:100%;height:auto}
.about-hero>img{height:auto;max-height:650px;object-fit:contain}
.together-section figcaption{font-size:.875rem;line-height:1.5;color:var(--muted);padding-top:.8rem}
.ripari-scene{max-width:1100px;margin:0 auto 3rem;padding:0 2rem}
.ripari-scene img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}
.ripari-scene figcaption{text-align:center;font-size:.875rem;color:var(--muted);padding-top:1rem}
.mobile-menu nav a{transition:background-color .4s ease}
.mobile-menu nav a:hover,.mobile-menu nav a:focus-visible{background-color:#e0e8dd}
.mobile-menu nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--forest);text-underline-offset:.3em}
@media(prefers-reduced-motion:reduce){.desktop-nav a,.mobile-menu nav a{transition:none}}
.page-hero{padding:7rem 2rem 6rem;max-width:var(--max);margin:auto}
.page-hero h1{max-width:14ch;margin:1.1rem 0 1.7rem}
.page-hero .lead{max-width:54ch}
.media-hero,.about-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:5rem;align-items:center}
.media-hero h1,.about-hero h1{max-width:12ch}
.hero-photo{margin:0;position:relative;height:440px;background:var(--ink);overflow:hidden}
.hero-photo img,.about-hero>img{width:100%;height:100%;object-fit:cover}
.hero-photo img{object-position:center 32%}
.hero-photo::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.28);margin:1rem}
.hero-photo figcaption{position:absolute;left:1.6rem;bottom:1.5rem;background:rgba(27,41,50,.88);color:#fff;padding:.7rem 1rem;font-size:.78rem;letter-spacing:.06em}
.about-hero>img{height:390px;object-position:center 58%;box-shadow:20px 20px 0 #dfe7dc}
.speaker-hero h1{max-width:15ch}
.ripari-hero h1{max-width:16ch}
.two-panels{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding-top:0}
.panel{background:#fff;padding:3rem;min-height:480px;border-top:5px solid var(--forest)}
.panel h2{font-size:2.4rem;margin:1rem 0 1.4rem}
.panel p{color:var(--muted)}
.panel ul{padding-left:1.2rem;margin-top:1.5rem}
.panel li{padding:.25rem 0}
.process{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem}
.steps{border-top:1px solid var(--line)}
.steps>div{display:grid;grid-template-columns:3rem 1fr;column-gap:1rem;border-bottom:1px solid var(--line);padding:1.6rem 0}
.steps span{grid-row:span 2;color:var(--forest);font-size:.85rem;font-weight:700}
.steps h3{margin:0 0 .35rem;font-size:1.25rem}
.steps p{margin:0;color:var(--muted)}
.art-section{background:#dfe7dc;padding:5rem max(2rem,calc((100vw - 1176px)/2));display:grid;grid-template-columns:.65fr 1fr;gap:4rem;align-items:center}
.art-monogram{font-family:Georgia,serif;font-size:16rem;color:#769276;line-height:.8}
.art-section p{font-size:1.12rem}
.editorial-photo{margin:0;position:relative;min-width:0}
.editorial-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 28%;filter:saturate(.82)}
.editorial-photo figcaption{font-size:.75rem;color:var(--muted);margin-top:.7rem}
.media-grid,.content-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.media-grid>div,.content-list>div{background:#fff;padding:2.5rem;min-height:210px}
.media-grid span,.content-list span{font-size:.76rem;letter-spacing:.16em;color:var(--forest);font-weight:700}
.media-grid h3,.content-list h3{margin:1.5rem 0 .6rem}
.media-grid p,.content-list p{color:var(--muted);margin:0}
.quote-panel{max-width:var(--max);margin:2rem auto 6rem;padding:4rem 5rem;background:#e4e9df}
.quote-panel h2{max-width:15ch;margin:1rem 0}
.quote-panel p{color:#425448;font-size:1.1rem}
.link-row{display:flex;gap:2rem;flex-wrap:wrap;margin-top:2rem}
.people{padding-top:0;display:grid;gap:1rem}
.people-title{margin-bottom:1.5rem}
.people-title h2{margin:.6rem 0}
.mission{max-width:var(--max);margin:0 auto 5rem;padding:4rem 2rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:5rem;border-top:1px solid var(--line)}
.mission h2{margin:1rem 0}
.mission p{font-size:1.1rem;color:var(--muted)}
.mission .mission-statement{font-family:"Manrope",sans-serif;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.4;font-weight:600;color:var(--ink);letter-spacing:-.035em;margin:.7rem 0 1.6rem}
.person{display:grid;grid-template-columns:280px 1fr;gap:3rem;align-items:start;padding:3rem;background:#fff}
.person[id]{scroll-margin-top:2rem}
.person-photo{margin:0;position:sticky;top:2rem;overflow:hidden;background:var(--ink)}
.person-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;filter:saturate(.88)}
.person:nth-of-type(3) .person-photo img{object-position:center 20%}
.person-initial{display:grid;place-items:center;background:var(--ink);color:#a6bba7;height:200px;font:400 8rem Georgia,serif}
.person:nth-child(2) .person-initial{background:var(--forest);color:#e8ede7}
.person h2{margin:1rem 0 1.4rem}
.person p{color:var(--muted)}
.small-note{font-size:.9rem}
.credentials{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.5rem 0 1.7rem}
.credentials span{display:inline-flex;align-items:center;border:1px solid #b9c6b9;background:#f2f5ef;color:#334b39;padding:.45rem .72rem;font-size:.79rem;font-weight:700;line-height:1.25}
.values{text-align:center;padding:7rem 2rem;background:linear-gradient(rgba(223,231,220,.91),rgba(223,231,220,.91)),url("/assets/foliage.webp") center/cover}
.values h2,.values p{margin-left:auto;margin-right:auto}
.values h2{margin-top:1rem}
.speaker-intro,.ripari-intro{max-width:var(--max);margin:0 auto;padding:4rem 2rem 7rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:5rem;align-items:center;border-top:1px solid var(--line)}
.large-initial{font:400 22rem/.8 Georgia,serif;color:var(--forest);text-align:center}
.speaker-photo{margin:0;position:relative}
.speaker-photo img{width:100%;aspect-ratio:4/5;display:block;object-fit:cover;object-position:center 30%;filter:saturate(.9)}
.speaker-photo::after{content:"";position:absolute;inset:1rem;border:1px solid rgba(255,255,255,.5)}
.speaker-intro h2,.ripari-intro h2{margin:1rem 0}
.speaker-intro p,.ripari-intro p{color:var(--muted);font-size:1.1rem}
.speaker-formats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.speaker-formats>div{padding:2rem;border-top:2px solid var(--forest);background:#fff}
.speaker-formats span{color:var(--forest);font-size:.78rem;font-weight:700}
.speaker-formats h3{margin:2.5rem 0 .8rem}
.speaker-formats p{color:var(--muted)}
.youth-panel{background:linear-gradient(rgba(223,231,220,.92),rgba(223,231,220,.92)),url("/assets/foliage.webp") center/cover;padding:5rem max(2rem,calc((100vw - 900px)/2));text-align:center}
.youth-panel h2,.youth-panel p{margin-left:auto;margin-right:auto}
.youth-panel h2{max-width:18ch;margin-top:1rem}
.youth-panel p{font-size:1.1rem}
.site-footer{background:#16232b;color:#fff;padding:5rem max(2rem,calc((100vw - 1176px)/2)) 1.6rem}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:3rem}
.footer-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}
.footer-top>div>span{color:#b8c7ba;text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;font-weight:700;margin-bottom:1rem}
.footer-top a{text-decoration:none}
.footer-top a:hover{text-decoration:underline}
.footer-brand{display:block;position:relative;width:min(260px,100%);aspect-ratio:1345/575;overflow:hidden;background:transparent;border:0;border-radius:0}
.footer-logo{display:block;position:absolute;width:114%;max-width:none;height:auto;left:-6%;top:-30%;filter:grayscale(1) invert(1) contrast(5);mix-blend-mode:screen}
.footer-brand span{display:block;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}
.footer-top p{color:#b8c7ba;margin:.4rem 0}
.footer-bottom{margin-top:5rem;padding-top:1.2rem;border-top:1px solid #3e4d52;color:#9dacaa;display:flex;justify-content:space-between;font-size:.8rem}
@media(max-width:1180px){.desktop-nav{display:none}.mobile-menu{display:block;margin-left:auto;position:relative}.mobile-menu summary{list-style:none;cursor:pointer;font-size:.9rem;font-weight:700;padding:.55rem .3rem}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{margin-left:.3rem}.mobile-menu nav{position:absolute;top:3rem;right:0;width:min(360px,calc(100vw - 2rem));padding:1.1rem;background:#fff;box-shadow:0 18px 40px rgba(0,0,0,.14);display:flex;flex-direction:column;z-index:20}.mobile-menu nav a{text-decoration:none;padding:.62rem .8rem;border-bottom:1px solid var(--line)}.header-contact{display:none}}
@media(max-width:850px){.hero{grid-template-columns:1fr}.home-hero h1{max-width:14ch}.hero-copy{padding:5rem 2rem 4rem}.hero-art{min-height:420px;padding:2rem}.art-frame{width:min(100%,390px)}.intro-grid,.home-shepherds,.mission,.process,.speaker-intro,.ripari-intro,.media-hero,.about-hero{grid-template-columns:1fr;gap:2rem}.intro-grid{padding:5rem 2rem}.home-shepherds{padding-top:4rem;padding-bottom:4rem}.mission{margin-bottom:2rem}.cards,.speaker-formats{grid-template-columns:1fr}.service-card{min-height:290px}.card-top{margin-bottom:2.5rem}.split-feature{grid-template-columns:1fr}.feature-mark{font-size:9rem;line-height:.5}.ripari-teaser{grid-template-columns:1fr}.contact-band{flex-direction:column;align-items:flex-start}.two-panels{grid-template-columns:1fr}.panel{min-height:0}.art-section{grid-template-columns:1fr}.art-monogram{font-size:8rem}.person{grid-template-columns:210px 1fr}.person-photo{position:static}.person-initial{height:130px;font-size:5rem}.large-initial{font-size:12rem}.hero-photo,.about-hero>img{height:360px}.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){body{font-size:1rem}.header-inner{min-height:72px;padding:0 1.1rem}.brand-name{font-size:1.05rem}.hero-copy{padding:4rem 1.4rem 3.5rem}.hero-art{min-height:350px}.art-frame span{font-size:.6rem}.section,.page-hero{padding-left:1.4rem;padding-right:1.4rem}.page-hero{padding-top:4.5rem;padding-bottom:3rem}.intro-grid,.home-shepherds,.mission,.ripari-teaser,.speaker-intro,.ripari-intro{padding-left:1.4rem;padding-right:1.4rem}.landscape-break{height:300px;margin-bottom:3rem}.landscape-break>div{left:1.4rem;right:1.4rem}.two-panels{padding-top:0}.panel{padding:2rem}.panel h2{font-size:2rem}.media-grid,.content-list{grid-template-columns:1fr}.media-grid>div,.content-list>div{min-height:0}.quote-panel{padding:3rem 1.5rem;margin:0 1rem 4rem}.person{display:block;padding:1.4rem}.person-photo{margin-bottom:2rem}.person-initial{height:110px;width:110px;font-size:4.5rem;margin-bottom:2rem}.hero-photo,.about-hero>img{height:300px}.botanical::after{width:210px;height:210px}.footer-top{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:.4rem 0}.contact-band{padding:4rem 1.5rem}.theme-stamp{width:220px;height:220px}.theme-stamp strong{font-size:5rem}.speaker-formats>div{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card{transition:none}}

/* Unique nature motifs and uncropped editorial photographs. */
.page-hero{position:relative;overflow:hidden}
.page-hero::after,.home-hero::after{content:"";position:absolute;width:320px;height:320px;background-size:contain;background-repeat:no-repeat;opacity:.12;pointer-events:none;z-index:0}
.page-hero>*{position:relative;z-index:1}
body[data-page="home"] .home-hero::after{background-image:url("/assets/foliage.webp");left:2%;top:4%;right:auto;bottom:auto;width:380px;height:180px;opacity:.06}
body[data-page="training"] .page-hero::after{background-image:url("/assets/nature-1.webp");left:0;bottom:-3rem;right:auto}
body[data-page="lectures"] .page-hero::after{background-image:url("/assets/nature-2.webp");right:1%;top:1rem;bottom:auto}
body[data-page="media"] .page-hero::after{background-image:url("/assets/nature-4.webp");left:1%;bottom:-1rem;right:auto}
body[data-page="about"] .page-hero::after{background-image:url("/assets/nature-3.webp");left:0;bottom:-2rem;top:auto;right:auto}
body[data-page="speaker"] .page-hero::after{background-image:url("/assets/nature-0.webp");right:2%;bottom:-1rem;transform:rotate(-15deg)}
body[data-page="ripari"] .page-hero::after{background-image:url("/assets/nature-5.webp");left:45%;bottom:-5rem;right:auto}
.values,.youth-panel{background:#dfe7dc}
.together-section{max-width:var(--max);margin:0 auto 5rem;padding:0 2rem;display:grid;grid-template-columns:.8fr 1fr;gap:5rem;align-items:center}
.together-section figure{margin:0;max-width:430px}
.together-section img{display:block;width:100%;height:auto}
.together-section h2{margin:1rem 0}
.together-section p{font-size:1.15rem;color:var(--muted)}
.lecture-section{padding-top:0}
.lecture-section>h2{margin:1rem 0 2rem}
.lecture-photo{margin:0 0 3rem;max-width:440px}
.lecture-photo img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.lecture-photo figcaption,.wide-photo figcaption{font-size:.85rem;color:var(--muted);margin-top:.7rem}
.lecture-copy{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:2.5rem}
.lecture-copy p{color:var(--muted)}
.lecture-copy ul{padding-left:1.2rem}
.lecture-copy li{margin-bottom:.8rem}
.tyhy-section{border-top:1px solid var(--line)}
.wide-photo{margin:0}
.wide-photo img{display:block;width:100%;height:auto}
.tyhy-examples{padding-top:1rem}
.speaker-formats>article{padding:2rem;border-top:2px solid var(--forest);background:#fff;min-width:0}
.art-section .editorial-photo img{aspect-ratio:auto;height:auto;object-fit:contain}
.art-guide{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:1.25rem;align-items:start;margin-top:1.5rem}
.art-guide p{margin:0;overflow-wrap:break-word}
.art-guide img{display:block;width:180px;height:auto;object-fit:contain;border-radius:3px}
@media(max-width:560px){.art-guide{grid-template-columns:minmax(0,1fr) 128px;gap:.9rem}.art-guide img{width:128px;height:auto}}
.speaker-photo img{aspect-ratio:auto;height:auto;object-fit:contain}
.media-hero .hero-photo{height:auto;overflow:visible}
.media-hero .hero-photo img{display:block;height:auto;object-fit:contain}
.podcast-work{max-width:var(--max)}
.podcast-preview{display:block;position:relative;margin:2rem 0 1rem;background:var(--ink);color:white;text-decoration:none;max-width:960px}
.podcast-preview video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.podcast-preview>span{display:block;padding:1rem 1.2rem;font-weight:700;font-size:1rem;background:var(--ink)}
.podcast-preview:hover>span{background:#34434d}
.preview-pause{font:inherit;font-size:.9rem;padding:.55rem .9rem;border:1px solid var(--forest);background:transparent;color:var(--ink);cursor:pointer;margin:0 0 1.2rem}
.preview-pause:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.eyebrow{font-size:.8rem}
@media(max-width:850px){.together-section,.lecture-copy{grid-template-columns:1fr;gap:2rem}.together-section figure{max-width:520px}.page-hero::after,.home-hero::after{width:240px;height:240px}.lecture-photo{max-width:420px}}
@media(max-width:560px){.together-section{padding:0 1.4rem}.lecture-photo{width:92%;max-width:360px}.page-hero::after{width:190px;height:190px}.speaker-formats>article{padding:1.6rem}}
@media(max-width:850px){body[data-page="media"] .page-hero,body[data-page="about"] .page-hero{padding-bottom:13rem}body[data-page="media"] .page-hero::after{left:auto;right:1%;bottom:0;width:180px;height:180px}body[data-page="about"] .page-hero::after{left:1%;bottom:0;width:175px;height:175px}}
.has-card-icon{position:relative;min-width:0}
.pricing-section{border-top:1px solid var(--line);padding-top:4.5rem}
.pricing-heading{margin:0}
.pricing-summary{position:relative;display:flex;align-items:center;gap:1rem;width:100%;text-align:left;font:inherit;cursor:pointer;padding:1.65rem 1.8rem;color:var(--forest);background:#edf1e9;border:1px solid #c9d4c4;border-left:3px solid var(--forest);border-radius:5px;box-shadow:0 3px 12px #1b293206;min-height:108px;box-sizing:border-box}
.pricing-summary:hover{background:#e6ecdf}
.pricing-motif{width:76px;height:76px;object-fit:contain;opacity:.22;pointer-events:none;flex-shrink:0}
.pricing-summary .pricing-label,.pricing-summary .pricing-arrow{position:relative;z-index:1}
.pricing-summary::-webkit-details-marker{display:none}
.pricing-label{font-size:clamp(1.6rem,3vw,2.3rem);margin:0;font-weight:600}
.pricing-summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.pricing-arrow{width:14px;height:14px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);flex-shrink:0;margin-left:auto;margin-right:.5rem;transition:transform .32s ease}
.pricing-summary[aria-expanded="true"] .pricing-arrow{transform:rotate(225deg)}
.pricing-panel[hidden]{display:none}
.pricing-panel{overflow:hidden}
.pricing-content{display:flow-root}
.media-hero .hero-photo{background:transparent}
.media-hero .hero-photo::after{display:none}
.media-hero .hero-photo figcaption{position:static;background:transparent;padding:0;font-size:.95rem;letter-spacing:normal;line-height:1.6;color:var(--muted);margin-top:.85rem;text-align:left}
.pricing-content{padding-top:2rem}
@media(max-width:560px){.pricing-summary{padding:1.1rem 1rem;min-height:96px;gap:.65rem}.pricing-label{font-size:clamp(1.15rem,5vw,1.6rem)}.pricing-motif{width:46px;height:46px;opacity:.2}.pricing-arrow{width:12px;height:12px;margin-right:.2rem}}
@media(prefers-reduced-motion:reduce){.pricing-arrow{transition:none}}
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.price-card{padding:2rem;background:#fff;border:1px solid #c9d4c4;border-top:3px solid var(--forest)}
.price-card h3{font-size:1.4rem;margin-bottom:.75rem}
.price-card .price-amount{font-size:clamp(1.5rem,2.3vw,2rem);font-weight:600;color:var(--forest);line-height:1.35;margin:.5rem 0 1rem;letter-spacing:-.025em;overflow-wrap:break-word}
.price-card p{color:var(--muted);margin:0;font-size:1rem}
.pricing-terms{padding:1.5rem 0 0;max-width:90ch}
.pricing-terms p{font-size:1rem;color:var(--muted);line-height:1.7}
@media(max-width:700px){.price-grid{grid-template-columns:1fr}.price-card{padding:1.6rem}.price-card .price-amount{font-size:1.75rem}}
.has-card-icon>.card-icon{position:absolute;top:1.1rem;right:1.1rem;display:block;width:100px;height:100px;object-fit:contain;pointer-events:none}
.has-card-icon>h2,.has-card-icon>h3{margin-top:4.25rem}
.has-card-icon>.eyebrow,.has-card-icon>span:not(.card-icon){display:block;max-width:calc(100% - 90px)}
.service-card.has-card-icon .card-top{min-height:66px;margin-bottom:.5rem;padding-right:90px}
.service-card.has-card-icon h3{margin-top:.8rem}
.steps>.has-card-icon{padding-right:84px}
.steps>.has-card-icon>.card-icon{width:72px;height:72px;right:0;top:1.2rem}
.steps>.has-card-icon>h3{margin-top:0}
.steps>.has-card-icon>span{max-width:none}
.youth-panel.has-card-icon{padding-top:6.5rem}
.youth-panel.has-card-icon>.card-icon{right:max(1.4rem,calc((100vw - 1000px)/2));top:1.4rem}
.youth-panel.has-card-icon>.eyebrow{max-width:100%}
.youth-panel.has-card-icon>h2{margin-top:1rem}
.ripari-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:2rem;align-items:center;padding-top:5rem;padding-bottom:4rem}
.ripari-hero h1{font-size:clamp(2.6rem,4.5vw,4.4rem)}
.ripari-art{margin:0;min-width:0}
.ripari-art img{display:block;width:100%;height:auto}
body[data-page="ripari"] .page-hero::after{left:0;bottom:-3rem;width:170px;height:170px;opacity:.07}
.ripari-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.7rem}
.ripari-tags span{border:1px solid #a6b7a3;padding:.45rem .7rem;border-radius:2rem;color:var(--forest);font-size:.9rem}
body[data-page="ripari"] .ripari-intro{padding-top:3rem;padding-bottom:4rem}
body[data-page="ripari"] .content-list{gap:1rem;background:transparent;border:0}
body[data-page="ripari"] .content-list>div{border:1px solid #bfccbb;border-top:4px solid var(--forest);padding:2rem;min-height:245px}
body[data-page="ripari"] .content-list>div:nth-child(2),body[data-page="ripari"] .content-list>div:nth-child(3){background:#edf2e9}
.ripari-themes{padding-top:3rem;border-top:1px solid var(--line)}
.ripari-phases{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}
.ripari-phases>div{background:var(--forest);color:white;padding:2rem;display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.3rem;align-items:center}
.ripari-phases strong{grid-row:span 2;font-size:3.4rem;line-height:1;font-weight:500}
.ripari-phases span{font-weight:700;font-size:1.15rem}
.ripari-phases p{margin:0;font-size:1rem;line-height:1.5;color:#f1f5ed}
.theme-chips{list-style:none;counter-reset:riparitheme;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;padding:0;margin:0}
.theme-chips li{counter-increment:riparitheme;display:flex;align-items:flex-start;gap:.7rem;padding:1rem;background:#fff;border:1px solid #d6dfd2;font-size:1rem;line-height:1.45}
.theme-chips li::before{content:counter(riparitheme,decimal-leading-zero);color:var(--forest);font-weight:700;font-size:.85rem;line-height:1.7;flex-shrink:0}
@media(max-width:850px){.ripari-hero{grid-template-columns:1fr;gap:2rem}.ripari-art{max-width:650px;margin:auto}.theme-chips{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.has-card-icon>.card-icon{width:88px;height:88px;top:.9rem;right:.9rem}.has-card-icon>h2,.has-card-icon>h3{margin-top:3.8rem}.service-card.has-card-icon h3{margin-top:.8rem}.steps>.has-card-icon{padding-right:68px}.steps>.has-card-icon>.card-icon{width:60px;height:60px;right:0}.steps>.has-card-icon>h3{margin-top:0}.youth-panel.has-card-icon>h2{margin-top:1rem}.ripari-phases{grid-template-columns:1fr}.theme-chips{grid-template-columns:1fr}.ripari-hero{padding-top:3.5rem}.ripari-hero h1{font-size:2.7rem}.ripari-phases>div{padding:1.5rem}}

.person-personality{margin:26px 0;padding:20px 24px;background:#edf1e8;border-left:3px solid #526b58;border-radius:0 5px 5px 0}.person-personality h3{font-size:1.12rem;margin:0 0 12px;color:#344b3b}.person-personality p{margin:0;line-height:1.75}

.encounter-art{scroll-margin-top:100px;border-top:1px solid #d7dfd3}.encounter-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-bottom:60px}.encounter-intro h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.13;margin:18px 0 25px}.encounter-feature{margin:0}.encounter-feature img{display:block;width:100%;height:auto;border-radius:4px}.encounter-art figcaption{font-size:14px;line-height:1.55;color:#52605a;padding-top:12px}.encounter-invitation{background:#edf1e8;border-left:3px solid #526b58;padding:22px 25px;margin-top:26px}.encounter-invitation h3{font-size:1.15rem;margin-top:0}.encounter-invitation p{margin-bottom:0}.encounter-art>.section-heading{margin-top:50px;margin-bottom:25px}.encounter-art>.section-heading h3{font-size:clamp(1.5rem,3vw,2rem);line-height:1.25}.encounter-benefits,.encounter-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.encounter-benefits article,.encounter-steps li{position:relative;padding:85px 28px 28px;background:#fff;border-top:3px solid #526b58;min-width:0}.encounter-benefits h3,.encounter-steps h3{font-size:1.22rem;line-height:1.4;margin-top:0}.encounter-benefits p,.encounter-steps p{font-size:16px;line-height:1.7;margin-bottom:0}.encounter-art .card-icon{position:absolute;right:22px;top:18px;width:54px;height:54px;object-fit:contain}.encounter-steps{list-style:none;padding:0;counter-reset:none}.encounter-steps .eyebrow{display:block;font-size:13px;letter-spacing:.09em;margin-bottom:14px}.encounter-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:45px 0}.encounter-gallery figure{margin:0;min-width:0}.encounter-gallery img{display:block;width:100%;height:340px;object-fit:contain;background:#eef0e9;border-radius:4px}.encounter-booking{display:flex;gap:36px;align-items:center;justify-content:space-between;padding:28px;background:#e6ecdf;border:1px solid #cad6c4}.encounter-booking>div{max-width:720px}.encounter-booking h3{font-size:1.35rem}.encounter-booking p{font-size:16px;line-height:1.7}.encounter-booking>a{max-width:300px;flex-shrink:0;text-align:center;margin:0}.encounter-source{font-size:14px;line-height:1.65;margin-top:24px}.encounter-source a{text-decoration:underline}@media(max-width:1000px){.encounter-intro{grid-template-columns:1fr;gap:30px}.encounter-feature{max-width:750px}.encounter-benefits,.encounter-steps{grid-template-columns:1fr}.encounter-gallery{grid-template-columns:1fr 1fr}.encounter-booking{flex-direction:column;align-items:start}.encounter-booking>a{max-width:100%}}@media(max-width:600px){.encounter-gallery{grid-template-columns:1fr}.encounter-gallery img{height:auto;max-height:500px}.encounter-intro{margin-bottom:35px}.encounter-booking{padding:22px}.encounter-invitation{padding:20px}.encounter-benefits article,.encounter-steps li{padding:85px 22px 25px}}

/* Rippikoulumateriaalin esittelyvideo */
.ripari-teaser-media{display:flex;flex-direction:column;align-items:center;gap:1.6rem;min-width:0}
.ripari-teaser-media .theme-stamp{width:190px;height:190px}
.video-preview-link{display:block;width:100%;position:relative;overflow:hidden;border:1px solid #a9b8ab;border-radius:12px;box-shadow:0 12px 30px #1b293212;background:#1b2932;transition:transform .25s,box-shadow .25s}
.video-preview-link:hover{transform:translateY(-3px);box-shadow:0 16px 36px #1b293225}
.video-preview-link:focus-visible{outline:3px solid #526c58;outline-offset:5px}
.video-preview-link img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.video-preview-label{display:flex;align-items:center;gap:.9rem;padding:1rem 1.2rem;background:#1b2932;color:#fff;font-weight:600;font-size:1rem}
.video-preview-label small{display:block;font-size:.875rem;color:#c6d1c4;font-weight:400;margin-top:.15rem}
.video-play-icon{display:grid;place-items:center;border:1px solid #b8c9b5;border-radius:50%;width:42px;height:42px;flex-shrink:0;font-size:1rem;padding-left:3px;color:#d6e2d0}
.ripari-video-section{scroll-margin-top:110px;padding-top:2rem;padding-bottom:3rem}
.ripari-video-section .section-heading{max-width:850px}
.ripari-video{margin:2rem 0 0}
.ripari-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#1b2932;border-radius:12px;box-shadow:0 12px 35px #1b29321c}
.ripari-video figcaption{margin:.85rem 0;color:var(--muted);font-size:.9rem}
@media(max-width:850px){.ripari-video-section{scroll-margin-top:85px}}
@media(prefers-reduced-motion:reduce){.video-preview-link{transition:none}.video-preview-link:hover{transform:none}}

.ripari-teaser .video-preview-link{display:block;width:220px;max-width:100%;height:auto;min-height:0;margin-top:1.6rem;border-radius:8px;box-shadow:0 5px 18px #1b293212}
.ripari-teaser .video-preview-label{padding:.65rem .75rem;gap:.55rem;font-size:.875rem}
.ripari-teaser .video-preview-label small{font-size:.8rem}
.ripari-teaser .video-play-icon{width:30px;height:30px;font-size:.75rem}

.ripari-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.ripari-benefit-grid article{position:relative;background:#fff;border-top:3px solid var(--forest);padding:6rem 2rem 2rem}.ripari-benefit-grid h3{font-size:1.4rem;margin:.5rem 0 1rem}.ripari-benefit-grid p{color:var(--muted);line-height:1.7;margin-bottom:0}.ripari-license-note{margin-top:2rem;padding:1.5rem 2rem;background:#e7ecdf;border-left:3px solid var(--forest);font-size:1rem;line-height:1.7}@media(max-width:650px){.ripari-benefit-grid{grid-template-columns:1fr}.ripari-benefit-grid article{padding:6rem 1.5rem 1.5rem}}

.ripari-time-value{margin-top:2rem;padding:2rem;background:#edf1e7;border-top:3px solid var(--forest)}.ripari-time-value h3{font-size:clamp(1.4rem,2.3vw,1.8rem);margin:0 0 1rem}.ripari-time-value p{font-size:1rem;line-height:1.75;max-width:85ch}.ripari-time-value p:last-child{margin-bottom:0}@media(max-width:560px){.ripari-time-value{padding:1.5rem}}
/* Partnership extends the established calm, editorial Sheprock style. */
.partnership-hero{min-height:0;padding-bottom:4rem}.partnership-hero>div{max-width:58rem}.partnership-teaser,.partnership-purpose,.partner-docs,.partnership-shop-note{background:#e8eee6;border:1px solid #bcccbc;padding:clamp(1.5rem,4vw,3rem)}.partnership-teaser{margin:2rem 4%;width:auto}.partnership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.partnership-grid article{background:white;border-top:3px solid #536e59;padding:2rem}.partnership-tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.partnership-tier-grid h3{font-size:2rem}.partnership-tier-grid li,.partnership-values li{margin-bottom:.8rem;line-height:1.65}.partnership-tier-grid .button{margin-top:1rem}.partnership-note{font-size:1rem;margin-top:1.5rem}.partnership-values details,.partner-privacy{border-top:1px solid #aebcaf;padding:1.5rem 0;margin-top:2rem}.partnership-values summary,.partner-privacy summary{cursor:pointer;font-weight:650}.partner-steps{padding-left:1.5rem;max-width:58rem}.partner-steps li{padding:.7rem 0 .7rem .5rem;line-height:1.6}.partner-docs{margin-top:2rem}.partner-docs .text-link{display:inline-block;margin:1rem}.partner-form{max-width:60rem;background:white;padding:clamp(1.3rem,4vw,3rem);border:1px solid #cbd5cb}.partner-form label{display:block;font-size:1rem;margin-bottom:1rem}.partner-form input:not([type=checkbox]),.partner-form select,.partner-form textarea{display:block;width:100%;margin-top:.45rem;padding:.85rem;background:#fafbf8;border:1px solid #a5b4a7;border-radius:3px;font:inherit;color:#1b2932;box-sizing:border-box}.partner-form .check{display:flex;gap:.7rem;align-items:flex-start;line-height:1.5}.partner-form .check input{margin-top:.3rem;flex:none}.partner-form .honey{position:absolute;left:-9999px}.partner-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}#partner-message{margin-top:1.5rem;line-height:1.6;white-space:pre-line}.partner-admin{margin-top:3rem}.partnership-shop-note{margin-bottom:1.5rem}.partner-admin pre{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:1000px){.partnership-tier-grid{grid-template-columns:1fr}}@media(max-width:640px){.partnership-grid,.partner-form .form-row{grid-template-columns:1fr}.partner-docs .button{white-space:normal}.partnership-teaser{margin:1rem 4%}}
.partnership-unrestricted{margin-top:1.8rem}.partnership-unrestricted h3{margin-top:0}.partnership-unrestricted p{margin-bottom:0}.partnership-link-icon{width:1.25em;height:1.25em;flex-shrink:0;vertical-align:-.23em;margin-right:.55em}.partnership-inline-link{display:flex;align-items:center;width:fit-content;max-width:100%;font-size:1rem;line-height:1.5;margin-top:1rem}.partnership-inline-link .partnership-link-icon{margin-right:.55rem}.partnership-hero-link{font-weight:550;margin-top:1.3rem}.partnership-values summary{line-height:1.6}
/* Deep violet and restrained gold distinguish the partnership invitation. */
:root{--partnership-purple:#392345;--partnership-purple-hover:#57346a;--partnership-gold:#c5a35b;--partnership-gold-light:#e7c881;--partnership-tint:#f2eef5}
main a[href="/kumppanuus/"]:not(.button),body[data-page="partnership"] main .text-link{color:var(--partnership-purple)}
main a[href="/kumppanuus/"]:not(.button):hover,body[data-page="partnership"] main .text-link:hover{color:var(--partnership-purple-hover)}
main a.button[href="/kumppanuus/"],body[data-page="partnership"] main .button{background:var(--partnership-purple);border-color:var(--partnership-purple);color:#fff}
main a.button[href="/kumppanuus/"]:hover,body[data-page="partnership"] main .button:hover{background:var(--partnership-purple-hover);border-color:var(--partnership-purple-hover)}
main a.button[href="/kumppanuus/"] .partnership-link-icon,body[data-page="partnership"] main .button .partnership-link-icon{color:var(--partnership-gold-light)}
.partnership-teaser,.partnership-shop-note,body[data-page="partnership"] .partnership-purpose,body[data-page="partnership"] .partner-docs{background:var(--partnership-tint);border-color:#d4c8db;border-left:3px solid var(--partnership-gold)}
body[data-page="partnership"] main .eyebrow,.partnership-teaser .eyebrow{color:var(--partnership-purple)}
body[data-page="partnership"] .partnership-hero{border-bottom:1px solid #dfd2ba}
body[data-page="partnership"] .partnership-grid article{border-top-color:var(--partnership-gold)}
body[data-page="partnership"] .partnership-grid h3,body[data-page="partnership"] .partner-docs h3{color:var(--partnership-purple)}
body[data-page="partnership"] .partnership-unrestricted{background:var(--partnership-purple);border-color:var(--partnership-purple);border-left:4px solid var(--partnership-gold);color:#fff}
body[data-page="partnership"] .partnership-unrestricted h3{color:var(--partnership-gold-light)}
body[data-page="partnership"] .partnership-unrestricted p{color:#f6f1f8}
body[data-page="partnership"] .partnership-values details,body[data-page="partnership"] .partner-privacy{border-top-color:var(--partnership-gold)}
body[data-page="partnership"] .partner-form{border-color:#d4c8db;border-top:3px solid var(--partnership-gold)}
body[data-page="partnership"] .partner-form input:focus-visible,body[data-page="partnership"] .partner-form select:focus-visible,body[data-page="partnership"] .partner-form textarea:focus-visible{outline:2px solid var(--partnership-purple);outline-offset:3px}
body[data-page="partnership"] .partner-form input[type="checkbox"]{accent-color:var(--partnership-purple)}
.partnership-inline-link{transition:color .22s ease,border-color .22s ease}
main a.button.partnership-invite-button{background:var(--partnership-purple);color:var(--partnership-gold-light);border:1px solid var(--partnership-gold);padding:.8rem 1.15rem;border-radius:3px;box-sizing:border-box;max-width:100%;line-height:1.5;font-weight:650;text-align:left;box-shadow:0 2px 8px rgb(57 35 69 / 8%);transition:background .22s ease,transform .22s ease,box-shadow .22s ease}
main a.button.partnership-invite-button:hover{background:var(--partnership-purple-hover);border-color:var(--partnership-gold-light);color:#fff1cd;box-shadow:0 4px 12px rgb(57 35 69 / 14%)}
main a.button.partnership-invite-button:focus-visible{outline:2px solid var(--partnership-purple);outline-offset:4px}
main a.button.partnership-invite-button .partnership-link-icon{color:inherit}
@media(prefers-reduced-motion:reduce){main a.button.partnership-invite-button{transition:none}}

.video-sources{margin-top:1.5rem;color:var(--muted);max-width:850px}.video-sources summary{cursor:pointer;font-size:1rem;color:#392345;font-weight:600}.video-sources p{font-size:1rem;line-height:1.65}.video-sources a{color:#392345;text-decoration:underline}
