:root{--cream:#faf5ee;--lav:#ede4f5;--purple:#624477;--deep:#3e3150;--rose:#f3dcd4;--mint:#e5ebdb;--text:#4d4651;--line:#e9e0d9;--white:#fffdf9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:"DM Sans",system-ui,sans-serif;background:var(--cream);font-size:16px;line-height:1.7}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--deep)}h1,h2{font-family:"Fraunces",Georgia,serif;font-weight:600;line-height:1.16;letter-spacing:-.04em}h1{font-size:clamp(3.2rem,6.3vw,6.9rem)}h2{font-size:clamp(2.4rem,4vw,4.5rem)}h3{font-family:"Fraunces",Georgia,serif;font-size:1.37rem;line-height:1.3;letter-spacing:-.025em}h1 em,h2 em{font-weight:400;color:#8b6ba1}a{color:inherit}a:hover{color:var(--purple)}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-9999px;top:0;z-index:50;background:#fff;padding:10px}.skip:focus{left:10px}.site-header{position:sticky;top:0;z-index:20;background:rgba(250,245,238,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav-row{min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--deep);line-height:1.15;white-space:nowrap}.brand-icon{font-size:43px;color:#9a75b0;line-height:1}.brand strong{display:block;font-family:"Fraunces",Georgia,serif;font-size:20px;font-weight:600}.brand small{display:block;font-size:11px;letter-spacing:.06em;margin-top:6px;color:#8b788e}.site-header nav{display:flex;gap:22px;align-items:center}.site-header nav a{font-size:13px;font-weight:700;text-decoration:none}.nav-contact{background:var(--purple);color:#fff;padding:12px 19px;border-radius:30px}.nav-contact:hover{color:white;background:#4a315d}.menu-toggle{display:none;border:0;background:transparent;font-size:26px;color:var(--purple);cursor:pointer}.hero{background:linear-gradient(130deg,#fdf7ef 10%,#f8edeb 67%,#efe6f5 100%);overflow:hidden}.hero-grid{min-height:660px;display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;padding-block:74px 35px}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:700;color:#94759f;display:inline-block;margin-bottom:25px}.hero-copy h1{max-width:720px;margin-bottom:26px}.lead{max-width:560px;font-size:18px;color:#6e6470;line-height:1.8}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:27px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 26px;border-radius:40px;text-decoration:none;font-size:14px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-purple{background:var(--purple);color:#fff;box-shadow:0 10px 25px #6041791c}.button-purple:hover{background:#4c3560;color:#fff}.button-outline{border:1px solid #987ca7;color:var(--purple)}.quiet-link,.text-link{color:var(--purple);font-weight:700;text-decoration:none}.handwritten-note{margin-top:38px;color:#937c94;font-family:"Fraunces",serif;font-size:15px;font-style:italic}.handwritten-note span{color:#b98098}.hero-art{height:500px;position:relative;border-radius:48% 52% 53% 47% / 47% 41% 59% 53%;background:linear-gradient(155deg,#f1e2ed 0%,#e9dfec 48%,#e0eada 100%);box-shadow:inset 0 0 0 15px #ffffff45;display:grid;place-items:center;isolation:isolate}.art-blush{position:absolute;inset:12% 15%;border-radius:55% 45% 49% 51%;border:2px dashed #ffffff99;transform:rotate(10deg)}.art-center{text-align:center;z-index:2;transform:rotate(-5deg);display:grid;gap:9px}.art-pretitle{font-size:12px;text-transform:uppercase;letter-spacing:.24em;color:#8c718f}.art-title{font-family:"Fraunces",Georgia,serif;color:#694775;font-weight:600;font-size:clamp(42px,5vw,68px);line-height:1.14;letter-spacing:-.05em}.art-bottom{font-size:11px;letter-spacing:.11em;color:#7a637e}.art-flower,.art-sun,.art-leaf{position:absolute;line-height:1}.art-flower{font-size:130px;text-shadow:0 5px 10px #6c4c6915}.flower-a{top:-55px;right:42px;color:#ebbd92}.flower-b{bottom:-30px;left:-22px;color:#a78eb7;transform:rotate(22deg)}.flower-c{bottom:24px;right:-24px;color:#ecb2a8;font-size:105px}.art-sun{top:26px;left:50px;font-size:44px;color:#e7c57b}.art-leaf{font-size:98px;color:#a4b598}.leaf-a{left:-30px;top:85px;transform:rotate(64deg)}.leaf-b{right:18px;bottom:110px;transform:rotate(-20deg)}.hero-bottom{padding-block:16px 26px;display:flex;justify-content:space-between;border-top:1px solid #e8dbe0;font-size:12px;color:#877786}.section{padding-block:105px;scroll-margin-top:92px}.welcome{background:#fffdf9}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-grid p{font-size:17px;color:#655d64}.line-flower{font-size:34px;letter-spacing:6px;color:#b5a0b8;margin-top:34px}.section-heading{max-width:735px;margin-bottom:43px}.section-heading p{font-size:17px;max-width:640px;color:#756b75}.services{background:var(--cream)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:var(--white);padding:32px;border:1px solid #ede4dd;border-radius:30px;min-height:315px;display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 18px 35px #6e557016}.service-card:nth-child(2),.service-card:nth-child(5){background:#f6eff5}.service-card:nth-child(3),.service-card:nth-child(6){background:#eef1e8}.card-symbol{font-size:29px;margin-bottom:21px}.card-number{position:absolute;right:30px;top:33px;color:#baaebe;letter-spacing:.08em;font-size:12px}.service-card h3{margin-bottom:14px}.service-card p{font-size:14px;line-height:1.7;color:#6f6471}.service-card a{margin-top:auto;color:var(--purple);font-size:13px;font-weight:700;text-decoration:none}.price-note{font-size:13px;color:#827680;margin-top:25px}.workshops{background:var(--lav)}.workshop-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.workshop-grid>div>p{max-width:420px;font-size:17px}.workshop-list{counter-reset:work;list-style:none;padding:0;margin:0}.workshop-list li{padding:19px 0 19px 52px;border-bottom:1px solid #cbbacd;position:relative;counter-increment:work}.workshop-list li:before{content:counter(work,decimal-leading-zero);position:absolute;left:0;top:19px;color:#9576a8;font-weight:700;font-size:13px}.workshop-list strong{display:block;color:var(--deep);font-family:"Fraunces",serif;font-size:21px;line-height:1.4}.workshop-list span{font-size:14px;color:#736579}.extra-offers{margin-top:60px;padding:21px 30px;border-left:3px solid #a987b8;background:#ffffff77;font-size:14px}.extra-offers p{margin:0}.books{background:#fffdf9}.books-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.book-visual{height:400px;display:flex;align-items:center;justify-content:center;gap:0;background:#f4ebe8;border-radius:40px;overflow:hidden}.book-visual>div{height:250px;width:120px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;font-family:"Fraunces",serif;font-size:19px;box-shadow:15px 17px 16px #6c496020;border-radius:3px 10px 10px 3px}.book-visual>div span{font-size:49px}.book-one{background:#a5a9a0;transform:rotate(-11deg) translate(22px,19px)}.book-two{background:#a58ab2;z-index:1;transform:translateY(-24px)}.book-three{background:#d4a3a0;transform:rotate(10deg) translate(-22px,24px)}.books-grid p{font-size:17px;color:#716773}.blog-section{background:#f8f1e9}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.blog-card{border-radius:28px;padding:29px;background:#fff;min-height:250px;display:flex;flex-direction:column}.blog-card:nth-child(2n){background:#f0e8f5}.blog-card time{font-size:12px;color:#8d788f}.blog-card h3{margin-top:25px}.blog-card a{margin-top:auto;text-decoration:none;font-size:13px;font-weight:700;color:var(--purple)}.empty-message{padding:35px;border:1px dashed #c4b5c7;border-radius:26px;color:#7e7080;grid-column:1/-1;background:#ffffff69}.dobrice{background:#e8eedf}.dobrice-grid{display:grid;grid-template-columns:.6fr 1fr;gap:100px;align-items:center}.dobrice-illustration{height:270px;border-radius:55% 45% 52% 48%;display:flex;align-items:center;justify-content:center;color:#b89eb4;font-size:105px;letter-spacing:-24px;background:#ffffff77}.dobrice-illustration small{font-size:45px;color:#d9aaa3;transform:translateY(70px)}.dobrice-grid p{font-size:17px;max-width:560px}.gallery-section{background:#fffdf9}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-item{text-decoration:none;display:block;background:#f8f1e9;padding:8px;border-radius:22px;overflow:hidden}.gallery-item img{display:block;aspect-ratio:1;object-fit:cover;width:100%;border-radius:15px;background:#ede5ea}.gallery-item span{display:block;padding:10px 6px 4px;font-size:12px;color:#6d5d6f;line-height:1.45}.contact{background:linear-gradient(130deg,#f5e8ed,#ebdef2);text-align:center}.contact-inner{max-width:800px}.contact-flower{display:block;font-size:58px;color:#aa8ab6;margin-bottom:14px}.contact-inner h2{margin-bottom:20px}.contact-inner p{font-size:17px}.contact-inner .button{margin-top:15px}.contact-email{margin-top:26px;font-size:14px!important}.footer{padding:32px 0;background:#4b3b59;color:#f9edf8}.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.footer-brand{font-family:"Fraunces",serif;font-size:20px}.footer a{color:#fff}.footer small{color:#c6b7cb}.article-view{max-width:800px;margin-inline:auto}.article-view p{white-space:pre-wrap;font-size:17px}.article-back{display:inline-block;margin-bottom:25px;color:var(--purple)}.admin-panel{max-width:860px;margin:60px auto;padding:25px}.admin-panel input,.admin-panel textarea{width:100%;padding:12px;margin-bottom:15px;border:1px solid #d8cadd;border-radius:12px;font:inherit;background:#fff}.admin-panel textarea{min-height:220px}.admin-panel label{display:block;font-weight:700;font-size:14px}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-actions button{cursor:pointer}.admin-list{margin-top:32px}.admin-list button{display:block;margin-block:10px;border:1px solid #d8cadd;background:#fff;padding:10px;border-radius:10px;cursor:pointer}@media(max-width:1060px){.site-header nav{gap:12px}.site-header nav a{font-size:12px}.brand strong{font-size:17px}.hero-grid{gap:26px}.hero-art{height:420px}}@media(max-width:800px){.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:83px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--cream);padding:18px 24px 24px;box-shadow:0 20px 20px #46304a15;gap:0}.site-header nav.open{display:flex}.site-header nav a{font-size:15px;padding:10px}.site-header nav .nav-contact{text-align:center;margin-top:10px}.nav-row{min-height:83px}.hero-grid,.about-grid,.workshop-grid,.books-grid,.dobrice-grid{grid-template-columns:1fr;gap:33px}.hero-grid{padding-top:55px}.hero-art{height:420px;width:min(95%,480px);margin:25px auto 0}.cards,.blog-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.section{padding-block:75px}.book-visual{max-width:500px}.footer-grid{flex-wrap:wrap}}@media(max-width:540px){.shell{width:min(100% - 32px,1180px)}.brand strong{font-size:16px}.brand small{font-size:10px}.brand-icon{font-size:36px}.hero-grid{min-height:auto}.hero-art{height:340px}.art-title{font-size:43px}.art-flower{font-size:85px}.flower-a{top:-26px}.flower-b{bottom:-25px}.flower-c{font-size:65px}.hero-bottom{display:block;text-align:center}.hero-scroll{display:none}.cards,.blog-grid{grid-template-columns:1fr}.gallery-grid{gap:10px}.service-card{min-height:275px}.section-heading{margin-bottom:25px}.book-visual{height:300px}.book-visual>div{width:90px;height:210px}.workshop-list li{padding-left:38px}.footer-grid{display:block}.footer-grid>span{display:block;margin:10px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Content created in Sanity Studio */
.blog-cover{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:17px;margin-bottom:16px}
.blog-card:has(.blog-cover) h3{margin-top:8px}
.article-cover{width:100%;max-height:460px;object-fit:cover;border-radius:20px;margin:16px 0 28px}
.article-view blockquote{border-left:3px solid #a78eb7;padding:4px 0 4px 20px;margin:20px 0;color:#685875;font-style:italic}
.article-view h3{margin:26px 0 12px}
.article-view .list-paragraph{padding-left:12px;margin-bottom:8px}
.book-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:36px}
.book-card{background:#faf5ee;border:1px solid #e9e0d9;border-radius:25px;overflow:hidden}
.book-card img{display:block;width:100%;height:240px;object-fit:contain;background:#f1e9e3}
.book-card>div{padding:25px}
.book-card p{color:#6d6470;font-size:14px}
.book-card a{color:#624477;font-size:14px;font-weight:700;text-decoration:none}

/* ==========================================================
   Visual refinement · original 2026 Čarobna igra ljubavi direction
   Warm editorial identity, expressive type and Sanity-led books.
   ========================================================== */
:root{
  --cream:#fffaf4;--lav:#f2e9f2;--purple:#633573;--deep:#4d2a5d;
  --rose:#fae6dd;--mint:#e8eee0;--text:#534652;--line:#e8dbd5;
  --white:#fffefa;--sun:#f2c875;--tangerine:#bd7049;
}
html{scroll-padding-top:99px}
body{font-family:"Nunito","DM Sans",system-ui,sans-serif;background:var(--cream);color:var(--text)}
h1,h2,h3{letter-spacing:-.036em}
h1,h2{font-family:"Fraunces",Georgia,serif}
h3{font-family:"Fraunces",Georgia,serif}
h1 em,h2 em{color:#9a6096}
a:focus-visible,button:focus-visible{outline:3px solid #c7775b;outline-offset:4px}
.site-header{background:rgba(255,248,240,.97);border-color:#eedcd4;box-shadow:0 6px 24px #4d2a5d08}
.nav-row{min-height:90px}
.brand-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff0ab;color:#6e3980!important;border:2px solid #f7dda0;box-shadow:0 3px 0 #e1bca2;font-size:35px}
.brand strong{font-family:"Pacifico","Fraunces",cursive;font-weight:400;font-size:20px;letter-spacing:-.03em}
.brand small{font-family:"Nunito",sans-serif;font-size:9px;letter-spacing:.055em;text-transform:uppercase;font-weight:800;color:#95778c}
.site-header nav a{font-family:"Nunito",sans-serif;font-weight:800;font-size:13px}
.site-header nav a:not(.nav-contact):hover{color:var(--tangerine)}
.nav-contact{background:#7d427f;padding:12px 20px;box-shadow:0 5px 14px #68346e20}
.hero{background:linear-gradient(120deg,#fff0e0 0%,#ffe8d5 62%,#f8dfdc 100%);position:relative}
.hero::before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:#ffdab657;right:-90px;top:-160px;pointer-events:none}
.hero-grid{min-height:565px;padding-block:60px 53px;grid-template-columns:minmax(0,1.13fr) minmax(0,1fr);gap:55px}
.hero-copy h1{font-family:"Pacifico","Fraunces",cursive;font-size:clamp(3.2rem,4.5vw,4.95rem);line-height:1.48;font-weight:400;letter-spacing:-.055em;color:#4f2860;margin-bottom:12px;max-width:650px}
.hero-copy h1 em{font-style:normal;color:#b3635a}
.hero-copy .lead{font-size:clamp(18px,1.65vw,21px);line-height:1.7;color:#685462;max-width:570px}
.eyebrow{font-family:"Nunito",sans-serif;font-weight:800;letter-spacing:.17em;color:#9a587b;font-size:11px}
.hero .eyebrow{color:#a16752;margin-bottom:15px}
.hero-actions{margin-top:27px;gap:23px}
.button{font-family:"Nunito",sans-serif;font-weight:800;letter-spacing:.015em}
.button-purple{background:#703f7c;border-radius:999px;box-shadow:0 8px 20px #63357320}
.button-purple:hover{background:#532962}
.hero .quiet-link{font-family:"Nunito",sans-serif;font-size:14px}
.handwritten-note{font-family:"Fraunces",Georgia,serif;font-style:italic;font-size:16px;color:#976e86;margin-top:29px}
.hero-art{height:465px;background:radial-gradient(circle at 40% 25%,#fff5e7 0,#fbe1cf 46%,#ead9dc 100%);border-radius:44% 56% 48% 52% / 52% 42% 58% 48%;box-shadow:0 27px 65px #6b3b5220,inset 0 0 0 12px #fff9f06a}
.art-center{transform:rotate(-4deg);gap:11px}
.art-pretitle{font-family:"Nunito",sans-serif;font-weight:800;letter-spacing:.19em;font-size:11px;color:#a16f7e}
.art-title{font-family:"Pacifico","Fraunces",cursive;font-weight:400;font-size:clamp(31px,3.2vw,47px);line-height:1.6;color:#713d7c;letter-spacing:-.035em}
.art-title i{font-style:normal;color:#c57769}
.art-bottom{font-size:10px;letter-spacing:.12em;font-weight:800;color:#946b7b}
.art-flower{text-shadow:0 8px 16px #b1656e15}
.flower-a{color:#f3bd69}.flower-b{color:#a989bc}.flower-c{color:#ecb19c}
.art-sun{color:#edbc56}.art-leaf{color:#8ba780}
.hero-bottom{border-color:#e6c9c3;color:#865d70;font-family:"Nunito",sans-serif;font-weight:800}
.welcome{background:#fffdf9}.about-grid{align-items:center}.about-grid h2{max-width:600px}.about-grid p{line-height:1.9}
.section{padding-block:94px}
.services{background:#fff7f0}
.service-card{border-radius:23px;border-color:#eadbd7;box-shadow:0 5px 16px #61366a05}
.service-card:nth-child(2),.service-card:nth-child(5){background:#f7edf4}
.service-card:nth-child(3),.service-card:nth-child(6){background:#edf2e7}
.service-card h3{font-size:1.4rem}
.service-card a,.text-link{color:#75407e}
.workshops{background:#f1e7ef}
.workshop-list strong{color:#4f2c5b}
.books{background:#fffdf9;position:relative;overflow:hidden;padding-block:101px 105px}
.books::before{content:"";position:absolute;top:-135px;right:-145px;width:450px;height:440px;border:1px solid #f1ddd7;border-radius:50%;pointer-events:none}
.books-header{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(210px,.55fr);gap:44px;align-items:center;margin-bottom:52px}
.books-heading h2{max-width:780px;font-size:clamp(2.7rem,4.5vw,4.9rem);line-height:1.2;margin-bottom:23px}
.books-heading em{color:#aa6a85}
.books-intro{font-size:17px;line-height:1.85;max-width:670px;color:#736270}
.books-aside{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;max-width:220px;justify-self:end;text-align:center}
.books-aside-flower{font-size:94px;line-height:1;color:#d5a0a7;transform:rotate(-13deg)}
.books-aside-text{font-family:"Pacifico","Fraunces",cursive;color:#9b6b95;font-size:18px;line-height:1.7}
.book-cards{display:grid;grid-template-columns:1fr;gap:26px;margin:0;align-items:stretch}
.book-card{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);background:#fff8f1;border:1px solid #ecdcd4;border-radius:30px;overflow:hidden;min-height:385px;box-shadow:0 12px 38px #51304e0c;transition:box-shadow .2s ease,transform .2s ease}
.book-card:hover{transform:translateY(-3px);box-shadow:0 20px 46px #51304e18}
.book-card-visual{position:relative;min-width:0;background:linear-gradient(135deg,#efe3df,#f0e5dc 68%,#e6dbe9);display:flex;justify-content:center;align-items:center;padding:26px;overflow:hidden}
.book-card-visual::before{content:"";position:absolute;width:410px;height:410px;border-radius:50%;border:1px solid #ffffffa6;transform:translate(16%,5%);pointer-events:none}
.book-cover{display:block;position:relative;z-index:1;width:100%;height:340px;max-height:calc(100% - 30px);max-width:410px;object-fit:contain;filter:drop-shadow(0 12px 12px #2b224822);border-radius:8px}
.book-card-copy{padding:55px clamp(26px,5vw,67px);display:flex;flex-direction:column;justify-content:center;min-width:0;gap:0}
.book-category{font-family:"Nunito",sans-serif;font-size:11px;letter-spacing:.18em;font-weight:800;color:#a66e83;display:block;margin-bottom:18px}
.book-card-copy h3{font-size:clamp(2rem,3.15vw,3.4rem);line-height:1.16;margin-bottom:19px;font-weight:600;color:#4e2c5e}
.book-description{line-height:1.84;color:#776b73;font-size:15px;white-space:pre-line;max-width:510px;margin-bottom:23px}
.book-cta{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;text-decoration:none;font-family:"Nunito",sans-serif;font-size:13px;font-weight:800;background:#713e79;color:#fff;padding:13px 24px;border-radius:25px;transition:transform .2s,background .2s}
.book-cta:hover{color:#fff;background:#522c60;transform:translateY(-1px)}
.book-no-cover{width:230px;min-height:280px;border-radius:9px 18px 18px 9px;box-shadow:-12px 16px 24px #54314a35;background:linear-gradient(145deg,#a7aa94,#7a867e);color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:35px}
.book-no-cover span:first-child{font-size:85px;color:#f1c5a7}
.book-no-cover span:last-child{font-size:11px;letter-spacing:.15em;font-weight:800;padding-inline:15px}
.book-cards:has(> .book-card:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
.book-cards:has(> .book-card:nth-child(2)) .book-card{grid-template-columns:1fr}
.book-cards:has(> .book-card:nth-child(2)) .book-card-visual{min-height:290px}
.book-cards:has(> .book-card:nth-child(2)) .book-cover{height:265px}
.book-cards:has(> .book-card:nth-child(2)) .book-card-copy{padding:34px}
.book-cards:has(> .book-card:nth-child(2)) .book-card-copy h3{font-size:2rem}
.books-empty{padding:34px 30px;border-radius:22px;background:#faf1e9;border:1px dashed #d9c8cd;text-align:center}
.books-empty-icon{font-size:54px;color:#bb95ae;display:block;margin-bottom:4px}
.books-empty p{max-width:600px;margin:0 auto 20px;color:#776777}
.books-footnote{text-align:center;margin:30px 0 0;font-size:13px;color:#7a6b77}
.books-footnote a{font-weight:800;color:#794581;text-decoration:none;border-bottom:1px solid #d4bbca;padding-bottom:2px}
.blog-section{background:#f9f0eb}
.blog-card{border:1px solid #f0dfd9;box-shadow:0 9px 25px #61366a08;border-radius:24px;overflow:hidden}
.blog-card h3{font-size:1.65rem}
.blog-cover{border-radius:17px;max-height:220px;object-fit:cover}
.gallery-section{background:#fffdf9}
.gallery-item{border-radius:22px;transition:transform .2s ease,box-shadow .2s ease}
.gallery-item:hover{transform:translateY(-3px);box-shadow:0 12px 25px #5a3d581a}
.contact{background:linear-gradient(120deg,#fbe3dc,#f4e3ed 75%,#eee6f1)}
.contact-flower{color:#a37a9b}
.footer{background:#4d305b}
@media(max-width:990px){
  .books-header{grid-template-columns:1fr auto;gap:20px}
  .books-aside{max-width:160px}.books-aside-flower{font-size:66px}.books-aside-text{font-size:14px}
  .book-card-copy{padding:30px}.book-cover{height:300px}
  .hero-grid{gap:30px}.hero-art{height:390px}
}
@media(max-width:800px){
  .nav-row{min-height:83px}
  .site-header nav{background:#fff8f2;box-shadow:0 18px 25px #593e5818}
  .hero-grid{grid-template-columns:1fr;gap:15px;min-height:auto}
  .hero-copy h1{font-size:clamp(3rem,8.2vw,4.8rem)}
  .hero-art{height:400px;width:min(95%,510px)}
  .books-header{grid-template-columns:1fr}.books-aside{display:none}
  .book-card{grid-template-columns:1fr;min-height:0}
  .book-card-visual{min-height:340px}.book-card-copy{padding:36px}
  .book-cards:has(> .book-card:nth-child(2)){grid-template-columns:1fr}
  .book-cards:has(> .book-card:nth-child(2)) .book-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  .book-cards:has(> .book-card:nth-child(2)) .book-card-visual{min-height:270px}
  .book-cards:has(> .book-card:nth-child(2)) .book-cover{height:260px}
}
@media(max-width:540px){
  .nav-row{min-height:77px}.brand-icon{width:44px;height:44px;font-size:30px}
  .brand strong{font-size:17px}.brand small{font-size:8px}
  .hero-grid{padding-block:40px 35px}
  .hero-copy h1{font-size:clamp(2.6rem,10vw,3.6rem);line-height:1.38}
  .hero-art{height:320px;max-width:400px}
  .art-title{font-size:33px}
  .section{padding-block:65px}
  .books{padding-block:71px}
  .books-heading h2{font-size:clamp(2.25rem,10vw,3.15rem)}
  .books-intro{font-size:15px}
  .book-card{border-radius:23px}
  .book-card-visual{min-height:300px;padding:25px}
  .book-cover{height:265px;max-height:none}
  .book-card-copy{padding:31px 26px}
  .book-card-copy h3{font-size:2.1rem}
  .book-description{font-size:14px}
  .book-cards:has(> .book-card:nth-child(2)) .book-card{grid-template-columns:1fr}
  .books-footnote{font-size:12px;line-height:1.7}
}
@media(prefers-reduced-motion:reduce){
  .book-card:hover,.gallery-item:hover{transform:none}
}

/* Multi-page editorial navigation */
.site-header nav a[aria-current="page"]{color:#754d8d;text-decoration:underline;text-decoration-color:#b69fc3;text-underline-offset:7px}
.inner-hero{background:linear-gradient(115deg,#f8eee8,#eee6f4);padding:76px 0 68px;overflow:hidden}
.inner-hero-content{position:relative;max-width:1180px}
.inner-hero h1{font-size:clamp(2.7rem,5.5vw,5.5rem);max-width:850px;margin-bottom:15px}
.inner-hero p{max-width:640px;font-size:18px;color:#746678;margin:0}
.inner-flower{position:absolute;right:4%;top:-40px;font-size:185px;color:#c8b0ce;opacity:.38;pointer-events:none}
.inner-hero+.section{padding-top:74px}
.home-about{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.home-about p{font-size:18px;max-width:560px}
.home-paths{background:#f8f1e9}
.home-path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.home-path{display:flex;flex-direction:column;text-decoration:none;border:1px solid #e8dce4;border-radius:30px;background:#fffdf9;padding:30px 23px;min-height:275px;transition:transform .2s,box-shadow .2s}
.home-path:hover{transform:translateY(-4px);box-shadow:0 12px 35px #4d315010}
.home-path:nth-child(2){background:#f0e8f5}.home-path:nth-child(3){background:#eef1e8}.home-path:nth-child(4){background:#f9ebe8}
.home-path>span{font-size:30px}.home-path h3{margin:18px 0 9px}.home-path p{font-size:14px;line-height:1.65;color:#716876}.home-path strong{margin-top:auto;color:#624477;font-size:13px}
.home-latest{background:#fffdf9}.home-latest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.home-latest-grid>a{border:1px solid #e9e0d9;background:#faf5ee;border-radius:30px;padding:34px;text-decoration:none;display:block}
.home-latest-grid>a:nth-child(2){background:#f2eaf4}
.home-latest-grid span{font-size:11px;letter-spacing:.15em;color:#94759f;text-transform:uppercase}
.home-latest-grid h3{margin:18px 0 12px;font-size:26px}.home-latest-grid p{font-size:15px}
.home-latest-grid strong{font-size:13px;color:#624477}
.article-view{scroll-margin-top:110px}
@media(max-width:1100px){.site-header nav{gap:9px}.site-header nav a{font-size:11px}.home-path-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.home-about{grid-template-columns:1fr;gap:15px}.inner-hero{padding:60px 0}.inner-flower{font-size:115px;top:0;right:-10px}.site-header nav a{font-size:15px}}
@media(max-width:540px){.home-path-grid,.home-latest-grid{grid-template-columns:1fr}.home-path{min-height:215px}.inner-hero p{font-size:16px}.inner-flower{opacity:.2}}

.contact-form{max-width:760px;margin:30px auto 0;padding:clamp(20px,4vw,40px);background:#fffdf9;border:1px solid #e8dce4;border-radius:30px;text-align:left}
.contact-form label{display:block;font-size:14px;font-weight:700;margin-bottom:20px}
.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #d9cadb;border-radius:13px;padding:12px 14px;font:inherit;font-weight:400;background:white;color:#44374a}
.contact-form textarea{resize:vertical}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form .button{border:0;cursor:pointer;margin-top:15px}.contact-form .button:disabled{opacity:.5;cursor:not-allowed}
.contact-privacy,.contact-form #contact-status{font-size:13px;color:#716778}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:600px){.contact-form .form-row{grid-template-columns:1fr}}

.book-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.book-cards .book-card{min-width:0;display:grid;grid-template-columns:42% 1fr;gap:0;overflow:hidden}
.book-cards .book-card-visual{min-width:0;min-height:285px}
.book-cards .book-cover{width:100%;height:100%;object-fit:contain}
.book-cards .book-no-cover{min-height:100%;padding:22px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px}
.book-cards .book-no-cover span:last-child{font-family:"Fraunces",serif;font-size:1.3rem;line-height:1.3}
.book-cards .book-card-copy{min-width:0;padding:24px}
.book-cards .book-card-copy h3{font-size:clamp(1.2rem,2vw,1.65rem)}
.book-meta,.book-publisher,.book-credit{font-size:13px;line-height:1.5;margin:0 0 8px}
.book-meta{font-weight:700;color:#72557f}
@media(max-width:1050px){.book-cards{grid-template-columns:1fr}}
@media(max-width:560px){.book-cards .book-card{grid-template-columns:1fr}.book-cards .book-card-visual{min-height:260px;max-height:380px}.book-cards .book-cover{max-height:380px}.book-cards .book-card-copy{padding:22px}}

/* Buttons remain readable before, during, and after hovering. Older
   .book-card a rules must not override the white-on-purple CTA. */
.book-card a.book-cta,
.book-card a.book-cta:link,
.book-card a.book-cta:visited {
  color: #ffffff;
  background-color: #713e79;
  text-decoration: none;
}
.book-card a.book-cta:hover,
.book-card a.book-cta:focus-visible,
.book-card a.book-cta:active {
  color: #ffffff;
  background-color: #4d2859;
}
.book-card a.book-cta:focus-visible {outline: 3px solid #b383d4;outline-offset: 3px}

/* Publications: accessible two-panel editorial catalog */
.publications-tabs{display:flex;gap:12px;padding-top:42px;padding-bottom:0;flex-wrap:wrap}
.publication-tab{font:700 15px "Nunito",sans-serif;cursor:pointer;border:1px solid #d6c3d9;background:#fffaf5;color:#654a70;border-radius:999px;padding:13px 24px;transition:background .2s,color .2s}
.publication-tab:hover{background:#efe4f1}
.publication-tab.is-active,.publication-tab[aria-selected="true"]{background:#713e79;color:#fff;border-color:#713e79}
.publication-tab:focus-visible{outline:3px solid #b383d4;outline-offset:3px}
[role="tabpanel"][hidden]{display:none!important}
.publications-section{padding-top:60px;padding-bottom:100px}
.publication-group{margin:36px 0 46px}
.publication-group h3{font-size:clamp(1.4rem,2.4vw,2rem);margin:0 0 18px}
.publication-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.publication-item{border:1px solid #e8ded8;background:#fffdf9;border-radius:22px;padding:24px 27px}
.publication-item-header{display:flex;justify-content:space-between;align-items:start;gap:16px}
.publication-item h4{font-family:"Fraunces",Georgia,serif;color:#4e2c5e;font-size:1.15rem;line-height:1.4;margin:0 0 10px}
.publication-year{color:#704879;font-weight:700;font-size:13px;white-space:nowrap}
.publication-item p{margin:0 0 7px;font-size:13px;line-height:1.65}
.publication-link{font-size:13px;font-weight:700;color:#654277}
@media(max-width:720px){.publication-items{grid-template-columns:1fr}.publication-tab{flex:1;padding:11px 12px;font-size:13px}}

/* Official logo — keep the original uploaded artwork and text intact. */
.brand-logo{width:54px;height:54px;object-fit:contain;border-radius:50%;flex:none;display:block}
.footer-brand{display:flex;align-items:center;gap:10px}
.footer-logo{width:36px;height:36px;object-fit:contain;border-radius:50%;flex:none}
@media(max-width:540px){.brand-logo{width:43px;height:43px}}

/* Optional author portrait: no empty frame until an image is published. */
.about-portrait[hidden]{display:none!important}
.about-portrait{width:min(100%,390px);aspect-ratio:4/5;border-radius:44% 44% 26px 26px;overflow:hidden;background:#eee4ed;margin:0 0 34px;border:7px solid #fffaf4;box-shadow:0 18px 46px #4f345022}
.about-portrait img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:760px){.about-portrait{width:min(100%,320px);margin:0 auto 28px}}

/* About: compact page title and aligned editorial portrait + biography */
body:has([data-cms-page="o-meni"]) .inner-hero{padding:38px 0 35px}
body:has([data-cms-page="o-meni"]) .inner-hero h1{font-size:clamp(2.7rem,4.4vw,4.3rem);margin-bottom:8px}
body:has([data-cms-page="o-meni"]) .inner-hero p{font-size:16px}
body:has([data-cms-page="o-meni"]) .inner-flower{font-size:120px;top:-20px}
body:has([data-cms-page="o-meni"]) .inner-hero+.section{padding-top:48px}
.about-profile{display:grid;grid-template-columns:minmax(250px,0.86fr) minmax(0,1.14fr);gap:clamp(32px,5vw,80px);align-items:start}
.about-profile .about-photo-column{min-width:0}
.about-profile .about-portrait{width:min(100%,410px);margin:0;aspect-ratio:4/5;border-radius:44% 44% 26px 26px}
.about-profile .about-biography{min-width:0;align-self:start;padding-top:12px}
.about-profile .about-biography h2{font-size:clamp(2.2rem,3.3vw,3.6rem);margin:12px 0 14px}
.about-profile .about-biography .line-flower{margin-bottom:24px}
.about-profile .about-biography p{font-size:16px;line-height:1.8;margin-bottom:18px}
@media(max-width:760px){
  .about-profile{grid-template-columns:1fr;gap:26px}
  .about-profile .about-portrait{width:min(100%,370px);margin:0 auto}
  .about-profile .about-biography{padding-top:0}
  body:has([data-cms-page="o-meni"]) .inner-hero{padding:30px 0}
  body:has([data-cms-page="o-meni"]) .inner-hero+.section{padding-top:32px}
}

/* About page: single compact composition without duplicate hero band */
body:has([data-cms-page="o-meni"]) #o-meni.section{padding:clamp(26px,4vw,54px) 0 clamp(48px,6vw,90px)}
body:has([data-cms-page="o-meni"]) .about-grid.about-profile{align-items:start;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,70px)}
body:has([data-cms-page="o-meni"]) .about-profile .about-biography{align-self:start;padding-top:0}
body:has([data-cms-page="o-meni"]) .about-profile .about-page-title{font-size:clamp(2.6rem,4.4vw,4.8rem);margin:5px 0 8px}
body:has([data-cms-page="o-meni"]) .about-profile .about-page-intro{font-size:15px;line-height:1.65;color:#756979;margin-bottom:22px}
body:has([data-cms-page="o-meni"]) .about-profile .about-biography h2{font-size:clamp(1.8rem,2.8vw,2.8rem);margin:0 0 12px}
body:has([data-cms-page="o-meni"]) .about-profile .about-biography .line-flower{margin:0 0 20px}
body:has([data-cms-page="o-meni"]) .about-profile .about-portrait{width:min(100%,410px)}
@media(max-width:760px){
 body:has([data-cms-page="o-meni"]) .about-grid.about-profile{grid-template-columns:1fr;gap:25px}
 body:has([data-cms-page="o-meni"]) .about-profile .about-portrait{width:min(100%,340px);margin:0 auto}
}

/* Upcoming event cards */
.event-list{display:grid;gap:1.5rem;margin-top:1.5rem}
.event-card{display:grid;grid-template-columns:minmax(160px,260px) 1fr;gap:2rem;padding:1.5rem;border:1px solid #e8dcd8;border-radius:24px;background:#fffaf6;align-items:start}
.event-poster{width:100%;height:auto;border-radius:16px;object-fit:contain}
.event-details h3{margin-top:0}
.event-details p{line-height:1.65}
.event-meta,.event-facts{font-weight:700}
.event-contact{font-size:.9rem}
.event-more{display:inline-block;margin-left:1rem}
@media(max-width:680px){.event-card{grid-template-columns:1fr}.event-poster{max-width:320px;margin:auto}.event-more{display:block;margin:1rem 0}}

/* Separate event archive from evergreen workshop programs */
.events-group{margin-bottom:3.5rem}
.events-group h2{margin-bottom:1.5rem}
.event-card-compact{grid-template-columns:minmax(110px,175px) 1fr;gap:1.5rem}
.event-card-compact .event-details p{margin-bottom:.6rem}
.home-events .event-list{margin-bottom:1.25rem}

/* Make the next event visible immediately after the homepage introduction. */
.home-events{padding:clamp(38px,5vw,68px) 0;background:#fff8f1}
.home-events h2{margin:.3rem 0 .6rem}
.home-events .event-card-compact{max-width:980px}
@media(max-width:900px){.nav-row nav{gap:clamp(7px,1vw,14px)}.nav-row nav a{font-size:clamp(12px,.88vw,14px)}}

.seo-detail{max-width:860px;margin:0 auto;padding:20px 0 80px}
.seo-detail h1{font-size:clamp(2.5rem,5vw,4.7rem);margin:26px 0}
.seo-detail-image{display:block;max-width:100%;max-height:620px;width:auto;height:auto;object-fit:contain;border-radius:24px;margin:25px auto 36px}
.seo-detail-body{font-size:17px;line-height:1.9}
.seo-detail-body h2,.seo-detail-body h3{margin:28px 0 12px}
.event-detail-link{display:inline-block;margin-top:15px;color:#624477;font-weight:700}

.event-share{display:inline-flex;align-items:center;justify-content:center;margin:12px 0 0 12px;padding:10px 17px;border:1px solid #754b85;border-radius:999px;background:#fffdf9;color:#624477;font:700 13px "DM Sans",sans-serif;cursor:pointer}
.event-share:hover,.event-share:focus-visible{background:#efe4f1;color:#4b2c60}
.event-share:focus-visible{outline:3px solid #b383d4;outline-offset:3px}
@media(max-width:540px){.event-share{margin:12px 0 0}}

/* Homepage upcoming event: stacked, readable layout on phones and tablets. */
@media(max-width:800px){
  .home-events .event-card-compact{
    display:flex;
    flex-direction:column;
    gap:1.15rem;
    padding:1rem;
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .home-events .event-card-compact .event-poster{
    display:block;
    width:min(100%,380px);
    max-width:100%;
    height:auto;
    max-height:none;
    margin:0 auto;
    object-fit:contain;
    border-radius:16px;
  }
  .home-events .event-card-compact .event-details{
    width:100%;
    min-width:0;
    overflow-wrap:anywhere;
  }
  .home-events .event-card-compact .event-details h3{
    font-size:clamp(1.35rem,5vw,1.9rem);
    line-height:1.25;
    margin:.35rem 0 .7rem;
  }
  .home-events .event-card-compact .event-meta{
    font-size:.95rem;
    line-height:1.6;
  }
  .home-events .event-card-compact .text-link{
    display:inline-flex;
    margin-top:.5rem;
  }
  .home-events .event-card-compact .event-share{
    margin:12px 0 0;
  }
}
