/*
Theme Name: LuovaTori
Description: Luovien tekijöiden suomalainen kohtaamispaikka.
Version: 1.2.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: luovatori
*/
:root{--ink:#20251e;--muted:#66705f;--paper:#f6f6ef;--green:#234b35;--line:#d9ddcf;--lime:#d6ed9b;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--green);border:1px solid var(--green);color:white;border-radius:6px;padding:13px 23px;text-decoration:none;font-weight:600;cursor:pointer}button:hover,.button:hover{background:#163b27;color:white}.secondary{color:var(--green);background:transparent}.wrap{width:min(1200px,calc(100% - 64px));margin:auto}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:96px;display:flex;align-items:center;gap:36px}.logo{font-size:29px;font-weight:800;letter-spacing:-1.5px;text-decoration:none;display:flex;align-items:center;gap:10px}.logo-symbol{color:var(--green);font-size:37px}.logo span:last-child{font-weight:400}.nav{display:flex;gap:27px;margin-left:auto;align-items:center}.nav a{text-decoration:none;font-size:14px;font-weight:550}.nav a:hover{text-decoration:underline}.hero{padding:78px 0 55px;display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:2px;color:var(--green);margin:0 0 20px}.eyebrow:before{content:'•';margin-right:9px}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.035em}h1{font-family:var(--serif);font-size:clamp(42px,5.1vw,70px);font-weight:400;margin:0 0 25px}h1 em{color:var(--green);font-weight:400}h2{font-family:var(--serif);font-size:38px;font-weight:400;margin:0 0 20px}h3{font-size:21px;font-weight:600}h4{font-size:19px}.hero p.lead{max-width:470px;font-size:17px;color:var(--muted);line-height:1.8}.hero .actions{margin-top:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.micro{font-size:12px;color:var(--muted);margin-top:20px}.art{height:420px;position:relative;background:#e8ebdc;border-radius:8px;overflow:hidden;isolation:isolate}.art:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#80936a 1px,transparent 1px);background-size:16px 16px;opacity:.15}.art-card{position:absolute;box-shadow:0 15px 40px #28331e20;display:flex;flex-direction:column;justify-content:space-between;padding:25px}.art-card.one{width:57%;height:72%;left:7%;top:12%;background:#cce496;transform:rotate(-9deg)}.art-card.two{width:45%;height:62%;right:4%;top:24%;background:#263c2e;color:#f0f0d7;transform:rotate(9deg)}.art-label{font-size:10px;letter-spacing:2px}.art-text{font-family:var(--serif);font-size:52px;line-height:.95;letter-spacing:-3px}.art-circle{height:110px;width:110px;border:24px solid #c3d3a0;border-radius:50%;align-self:center}.art-sticker{position:absolute;bottom:8%;left:15%;background:#fffdf0;border-radius:50%;width:91px;height:91px;display:grid;place-content:center;text-align:center;font-size:11px;line-height:1.4;transform:rotate(-13deg);border:1px solid var(--green)}.search-panel{background:white;border:1px solid var(--line);padding:20px 24px;border-radius:8px;display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:14px;align-items:end}.search-panel label{font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:650}.search-panel input,.search-panel select{margin-top:7px}.search-panel button{height:49px}.section{padding:68px 0}.section-top{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:25px}.section-top h2{margin:0}.text-link{font-size:14px;font-weight:600}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category{min-height:150px;padding:24px 20px;border:1px solid var(--line);border-radius:6px;text-decoration:none;background:#fafbf5;transition:transform .15s}.category:hover{transform:translateY(-3px);border-color:var(--green)}.category-icon{font-family:var(--serif);font-size:32px;display:block;color:var(--green);height:52px}.category-title{font-weight:600;font-size:15px;display:flex;justify-content:space-between;gap:5px}.category small{display:block;color:var(--muted);margin-top:7px;font-size:12px}.green-section{background:var(--green);color:var(--paper);padding:65px 0}.green-section .eyebrow{color:var(--lime)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:35px}.step-number{font-family:var(--serif);font-size:30px;color:var(--lime);border-bottom:1px solid #ffffff30;padding-bottom:16px;display:block}.steps p{color:#d8e2d5;font-size:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--line);background:white;border-radius:8px;padding:27px}.card h2{font-family:inherit;font-size:23px;font-weight:600}.card h2 a{text-decoration:none}.card h2 a:hover{text-decoration:underline}.card p{font-size:14px;color:var(--muted)}.avatar{height:56px;width:56px;display:grid;place-content:center;background:#e5edda;color:var(--green);font-family:var(--serif);font-size:28px;border-radius:50%;margin-bottom:20px}.tag{font-size:11px;background:#eaf0e3;padding:5px 9px;border-radius:3px;display:inline-block;margin:0 5px 8px 0}.empty{padding:35px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);grid-column:1/-1}.cta{display:flex;gap:40px;justify-content:space-between;align-items:center;background:#e7edda;border-radius:8px;padding:40px}.cta p{color:var(--muted);margin-bottom:0}.site-footer{border-top:1px solid var(--line);padding:40px 0;font-size:13px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-links{display:flex;gap:22px}.page-head{padding:56px 0 32px}.page-head h1{font-size:52px}.page-head p{max-width:760px;color:var(--muted)}.content{max-width:820px;margin:0 auto;padding:45px 0 70px}.content p{line-height:1.8}.content h1{font-size:48px}.content h2{margin-top:35px}.lt-form{display:grid;gap:20px;margin:25px 0}.lt-form label{display:grid;gap:7px;font-weight:600;font-size:14px}input,select,textarea{min-width:0;width:100%;padding:12px;border:1px solid #aeb7a6;border-radius:5px;color:var(--ink);background:white}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lt-form button{justify-self:start}.lt-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.muted{color:var(--muted);font-size:13px}.notice{padding:20px;background:#e5edda;border-left:3px solid var(--green);margin:20px 0}.offer-box,.account-item{margin:35px 0;padding:25px;border:1px solid var(--line);border-radius:8px}.offer{padding:24px;background:white;border:1px solid var(--line);margin-top:20px}.offer .eyebrow{font-size:10px}.offer h4{margin:10px 0}.pagination{padding:30px 0}.page-numbers{padding:8px 12px}.current{background:var(--green);color:white}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:22px}.skip-link{position:absolute;top:-100px;left:15px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #8c5c23;outline-offset:4px}.wp-post-image{max-width:100%;height:auto;border-radius:8px}.site-alert{padding:20px;background:#fff3cf}
@media(max-width:1000px){.nav{gap:15px}.hero{gap:30px}.art{height:370px}.art-text{font-size:42px}.categories{grid-template-columns:repeat(2,1fr)}.search-panel{grid-template-columns:1fr 1fr}.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.header-inner{flex-wrap:wrap;padding:16px 0;gap:15px}.logo{font-size:25px}.nav{width:100%;flex-wrap:wrap;margin:0;gap:14px}.nav .button{padding:8px 13px}.hero{padding:40px 0 30px;grid-template-columns:1fr}.hero h1{font-size:49px}.art{height:300px}.art-card.one{width:49%;left:14%}.art-card.two{width:40%;right:10%}.art-text{font-size:42px}.art-circle{width:75px;height:75px;border-width:16px}.art-sticker{width:70px;height:70px;left:22%;font-size:9px}.search-panel{grid-template-columns:1fr;padding:20px}.section{padding:45px 0}.section-top{align-items:start;flex-direction:column;gap:10px}h2{font-size:32px}.categories{gap:10px}.category{padding:18px 12px}.category-title{font-size:13px}.grid,.steps,.form-row{grid-template-columns:1fr}.steps{gap:20px}.cta{padding:28px;align-items:start;flex-direction:column;gap:20px}.content{padding-top:30px}.content h1,.page-head h1{font-size:40px}.offer-box,.account-item{padding:18px}.footer-inner{flex-direction:column}.footer-links{flex-wrap:wrap}.green-section{padding:45px 0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:700px){.art-card{padding:17px}.art-text{font-size:clamp(24px,6.8vw,38px);letter-spacing:-1px}.art-circle{flex-shrink:0}.logo-symbol{font-family:Georgia,serif}}

/* A single entrance on each page load; keep the original resting rotations. */
@media (prefers-reduced-motion: no-preference) {
  .art-card.one { animation: lt-card-one-in 850ms cubic-bezier(.22,1,.36,1) 100ms both; }
  .art-card.two { animation: lt-card-two-in 850ms cubic-bezier(.22,1,.36,1) 260ms both; }
  .art-sticker { animation: lt-sticker-in 650ms cubic-bezier(.22,1,.36,1) 480ms both; }
}
@keyframes lt-card-one-in {
  from { opacity: 0; transform: translate(-35px,45px) rotate(-17deg) scale(.94); }
  to { opacity: 1; transform: translate(0,0) rotate(-9deg) scale(1); }
}
@keyframes lt-card-two-in {
  from { opacity: 0; transform: translate(40px,45px) rotate(18deg) scale(.94); }
  to { opacity: 1; transform: translate(0,0) rotate(9deg) scale(1); }
}
@keyframes lt-sticker-in {
  from { opacity: 0; transform: translateY(18px) rotate(-24deg) scale(.75); }
  to { opacity: 1; transform: translateY(0) rotate(-13deg) scale(1); }
}

.lt-welcome{max-width:720px}.lt-onboarding-steps{display:flex;flex-wrap:wrap;gap:12px 32px;padding:20px 20px 20px 40px;background:#e9eddf;border-radius:8px;margin:28px 0}.lt-onboarding-steps li{padding-left:4px;font-size:.9rem}.lt-existing{border-top:1px solid #d9ddcf;margin-top:32px;padding-top:16px}.lt-welcome .lt-form{margin-top:24px}

.lt-form .lt-consent{display:block}.lt-form .lt-consent input[type=checkbox]{display:inline-block;width:auto;margin-right:8px}
