@font-face{font-family:StudioSerif;src:local('Baskerville'),local('Palatino Linotype');font-display:swap}
:root{--paper:#f8f5ee;--ink:#342e36;--muted:#6b6269;--purple:#766083;--rose:#edd6d1;--line:#ded8d4;--serif:StudioSerif,'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;--sans:'Avenir Next',Avenir,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #81608e;outline-offset:5px}::selection{background:#dec9e2}.header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:31px 5.5%;gap:30px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;line-height:1}.brand-name{font-family:var(--serif);font-size:33px;letter-spacing:-1.1px}.brand-dot{color:#a685a6}.brand-caption{font-size:9px;font-weight:600;letter-spacing:3px;margin-top:12px}.header nav{display:flex;gap:35px;font-size:13px}.header nav a{transition:color .2s}.header nav a:hover{color:var(--purple)}.button{background:var(--ink);color:#fffdf9;border-radius:3px;padding:18px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:13px;font-weight:500;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#6b5378;transform:translateY(-2px)}.button span{font-size:21px;font-weight:400;line-height:1}.button-small{padding:13px 18px;gap:26px;font-size:12px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:5%;padding:64px 5.5% 66px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;line-height:1.8;margin:0 0 29px}.tiny-flower{color:var(--purple);font-size:23px;display:inline-block;vertical-align:middle;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:clamp(55px,5.8vw,86px);line-height:1.03;letter-spacing:-3.4px;margin-bottom:29px}h1 em,h2 em{font-weight:400;color:var(--purple)}h1 em{font-size:.75em;letter-spacing:-2.5px;white-space:nowrap;line-height:1.2}.hero-description{max-width:395px;font-size:15px;color:var(--muted);line-height:1.85;margin-bottom:29px}.hero-link{display:flex!important;width:fit-content;margin-top:22px;font-size:12px!important;color:var(--muted)}.text-link{background:transparent;padding:0;display:inline-flex;gap:20px;align-items:center;font-size:13px;border-bottom:1px solid #bfb2c1;line-height:2}.text-link:hover{color:var(--purple);border-bottom-color:var(--purple)}.hero-art{margin:0;position:relative;padding-bottom:31px}.art-frame{position:relative;overflow:hidden;border-radius:47% 47% 4px 4px;background:#cbc0d4;aspect-ratio:760/830}.art-frame img{width:100%;height:100%;display:block;object-fit:cover}.art-note{position:absolute;left:-24px;bottom:81px;padding:21px 24px;display:flex;align-items:center;gap:15px;background:#fffcf5;transform:rotate(-5deg);box-shadow:0 6px 24px #51445413;font-family:var(--serif);font-size:21px;line-height:1.3}.art-note em{color:var(--purple)}.note-flower{font-size:45px;color:#a3789a}.hero-art figcaption{position:absolute;bottom:0;left:0;width:100%;font-size:8px;letter-spacing:1.9px;text-align:center;color:var(--muted)}.ribbon{background:#e9e1ed;display:flex;justify-content:space-around;align-items:center;gap:30px;padding:20px 25px;overflow:hidden;white-space:nowrap;color:#6a536e;font-size:11px;letter-spacing:1.5px}.ribbon span:nth-child(even){font-size:22px;line-height:1}.section{padding:85px 7%;max-width:1440px;margin:auto}.section-heading{display:grid;grid-template-columns:1.4fr 1fr;column-gap:12%;align-items:end}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:19px}h2{font-size:clamp(40px,4vw,58px);line-height:1.12;letter-spacing:-1.8px;margin-bottom:0}.section-heading>p:last-child{color:var(--muted);font-size:14px;margin-bottom:3px;max-width:315px}.club-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding-top:54px}.large-copy{font-family:var(--serif);font-size:28px;line-height:1.35;letter-spacing:-.5px;margin-bottom:18px}.club-description>p:not(.large-copy){font-size:14px;line-height:1.9;color:var(--muted);max-width:405px;margin-bottom:29px}.feature-row{display:flex;gap:18px;padding:19px 0;border-top:1px solid var(--line)}.feature-icon{font-size:10px;color:var(--purple);width:25px;padding-top:3px;flex-shrink:0}.feature-row h3{font-size:13px;font-weight:600;margin-bottom:6px}.feature-row p{font-size:12px;color:var(--muted);line-height:1.65;margin-bottom:0;max-width:330px}.program-card{background:#efe7e4;border:1px solid #e2d4d1;padding:29px 32px;border-radius:4px;align-self:start}.card-top{display:flex;align-items:center;justify-content:space-between}.card-top .eyebrow{font-size:9px;margin:0}.drawn-star{font-size:34px;color:#9a738d}.program-card>h3{font-family:var(--serif);font-size:32px;font-weight:400;margin:10px 0 17px;letter-spacing:-.7px}.price{font-family:var(--serif);font-size:40px;line-height:1;margin-bottom:25px;letter-spacing:-1px}.price span{font-family:var(--sans);font-size:11px;color:var(--muted);letter-spacing:0}.program-details{margin:0 0 24px}.program-details>div{display:flex;justify-content:space-between;gap:18px;border-top:1px solid #dcd0cd;padding:12px 0;font-size:11px}.program-details dt{color:var(--muted)}.program-details dd{margin:0;text-align:right;font-weight:500}.program-card .button{width:100%;font-size:12px;gap:12px}.card-note{font-size:10px;color:var(--muted);line-height:1.7;margin:14px 0 0}.program-card details{margin-top:21px;padding-top:16px;border-top:1px solid #dcd0cd;font-size:11px}.program-card summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.program-card summary::-webkit-details-marker{display:none}.program-card summary span{font-size:20px}.program-card details[open] summary span{transform:rotate(45deg)}.program-card details p{color:var(--muted);line-height:1.9;margin:10px 0 0}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:65px;padding-bottom:90px;border-top:1px solid var(--line);align-items:center}.about-art{min-height:445px;background:#e7e8dd;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:3px}.art-paper{background:#fcf8ef;width:75%;box-shadow:0 13px 28px #6d62561e;transform:rotate(-8deg);padding:26px 12px 19px;text-align:center}.paper-caption{text-transform:uppercase;font-size:8px;letter-spacing:3px;color:#82737c}.art-paper svg{display:block;width:100%;height:auto;margin:-5px auto}.paper-signature{font-family:var(--serif);font-size:21px;font-style:italic;color:#7c627e}.art-pencil{height:280px;width:10px;position:absolute;right:33px;bottom:22px;transform:rotate(14deg);background:linear-gradient(90deg,#ae7956,#d9b38b 50%,#a57958);clip-path:polygon(0 0,100% 0,100% 94%,50% 100%,0 94%)}.art-annotation{position:absolute;right:24px;bottom:20px;font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.3;color:#59604d;transform:rotate(3deg);background:#f3f0e5;padding:12px 15px}.about-copy .eyebrow{margin-bottom:22px}.about-copy h2{font-size:49px;margin-bottom:26px}.about-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:17px}.lesson-note{display:flex;gap:18px;border-top:1px solid var(--line);padding-top:24px;margin-top:26px}.mini-spark{font-size:27px;color:var(--purple);line-height:1}.lesson-note h3{font-size:12px;font-weight:600;margin-bottom:8px}.lesson-note p{font-size:12px;color:var(--muted);margin-bottom:13px}.lesson-note .text-link{font-size:11px}footer{max-width:1440px;margin:auto;border-top:1px solid var(--line);padding:32px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand .brand-name{font-size:27px}.footer-brand .brand-caption{font-size:7px;letter-spacing:2.8px}footer p{font-size:11px;margin:0;color:var(--muted)}footer p span{font-size:10px}.footer-meta{display:flex;flex-direction:column;align-items:end;gap:5px;font-size:10px;color:var(--muted)}.footer-meta small{font-size:9px}.skip-link{position:fixed;top:-90px;left:20px;z-index:100;background:var(--ink);color:white;padding:14px}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog{padding:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);width:590px;max-width:calc(100% - 24px);max-height:90dvh;box-shadow:0 20px 90px #21162840}dialog::backdrop{background:#251d2b80;backdrop-filter:blur(5px)}.dialog-content{padding:38px;position:relative}.close-dialog{position:absolute;right:13px;top:10px;width:40px;height:40px;border-radius:50%;font-size:28px;background:transparent;color:var(--ink)}.close-dialog:hover{background:#e9e1ed}.dialog-content .eyebrow{margin-bottom:18px;font-size:9px}.dialog-content h2{font-size:39px;letter-spacing:-1px;margin-bottom:16px}.dialog-intro{font-size:13px;color:var(--muted);margin-bottom:13px}.preview-note{font-size:11px;background:#ebe3ef;padding:12px 14px;color:#584660;border-radius:3px;line-height:1.6;margin-bottom:23px}label{display:block;font-size:11px;margin:15px 0 6px;font-weight:500}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #cfc5cf;border-radius:3px;background:#fffdf9;color:var(--ink);font-size:14px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#8a8089}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-submit{margin-top:20px;width:100%}.form-privacy{font-size:10px;color:var(--muted);text-align:center;margin:11px 0 0}.result-actions{display:flex;gap:22px;align-items:center;margin-top:20px}.edit-inquiry{margin-top:20px}#inquiry-result h3{font-family:var(--serif);font-weight:400;font-size:27px}#inquiry-text{font-size:12px;line-height:1.8;min-height:240px}#result-status{font-size:12px;min-height:20px;color:#65506f;margin:12px 0 0}body.modal-open{overflow:hidden}[hidden]{display:none!important}
@media(min-width:1450px){.header,.hero,.section,footer{max-width:1340px}.hero{gap:7%}h1{font-size:85px}}
@media(max-width:1000px){.header{padding:25px 5%}.hero{gap:5%;padding:48px 5% 53px}h1{font-size:64px}h1 em{font-size:.7em;white-space:normal}.eyebrow{font-size:8px;letter-spacing:1.6px}.hero-description{font-size:13px}.hero .button{font-size:11px;gap:15px;padding:16px}.art-note{font-size:17px;padding:16px;left:-14px;bottom:66px}.note-flower{font-size:33px}.hero-art figcaption{font-size:6px;letter-spacing:1.2px}.section{padding:65px 6%}.club-layout{gap:7%;grid-template-columns:1fr 1fr}.program-card{padding:24px}.section-heading{column-gap:8%}.about{gap:7%}.about-art{min-height:395px}.about-copy h2{font-size:39px}.about-copy>p:not(.eyebrow){font-size:12px}.ribbon{gap:26px}.ribbon span:last-child{display:none}}
@media(max-width:700px){html{scroll-padding-top:20px}.header{padding:22px 6%;gap:15px}.brand-name{font-size:28px}.brand-caption{font-size:7px;letter-spacing:2.4px;margin-top:9px}.header nav{display:none}.button-small{font-size:11px;padding:12px 14px;gap:17px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:40px 6% 33px;gap:35px}.hero-copy .eyebrow{font-size:8px;margin-bottom:20px}.tiny-flower{font-size:21px;margin-right:5px}h1{font-size:69px;line-height:.99;letter-spacing:-2.7px;margin-bottom:23px}h1 em{font-size:.66em;letter-spacing:-1.9px;white-space:nowrap;line-height:1.35}.hero-description{font-size:14px;line-height:1.8;max-width:440px;margin-bottom:23px}.hero .button{font-size:12px;padding:17px 20px;gap:28px}.hero-link{margin-top:17px}.hero-art{width:100%;max-width:470px;align-self:center;padding-bottom:24px}.art-frame{aspect-ratio:1.04;border-radius:44% 44% 3px 3px}.art-frame img{object-position:center 63%}.art-note{left:-8px;bottom:55px;font-size:19px;padding:17px 20px}.hero-art figcaption{font-size:6px;letter-spacing:1.2px}.ribbon{padding:15px 10px;gap:21px;justify-content:center;font-size:8px;letter-spacing:1px}.ribbon span:nth-child(n+5){display:none}.section{padding:51px 6%}.section-heading{display:block}.section-heading .eyebrow{font-size:9px;margin-bottom:19px}h2{font-size:44px;letter-spacing:-1.7px}.section-heading>p:last-child{font-size:13px;max-width:360px;margin-top:22px}.club-layout{display:flex;flex-direction:column;padding-top:32px;gap:30px}.large-copy{font-size:28px}.club-description>p:not(.large-copy){font-size:13px}.feature-row{padding:16px 0}.feature-row p{font-size:12px;max-width:100%}.program-card{width:100%;padding:27px}.program-card>h3{font-size:34px}.price{font-size:43px}.program-details>div{font-size:12px;padding:13px 0}.card-note{font-size:11px}.program-card details{font-size:12px}.about{display:flex;flex-direction:column;gap:37px}.about-art{min-height:380px;max-width:450px;width:100%;order:2}.about-copy{order:1}.about-copy h2{font-size:44px}.about-copy>p:not(.eyebrow){font-size:14px}.lesson-note h3,.lesson-note p{font-size:13px}.lesson-note .text-link{font-size:12px}.art-paper{max-width:330px}.about-copy .eyebrow{font-size:9px}.art-pencil{right:37px}footer{padding:30px 6%;flex-wrap:wrap;gap:25px}footer p{max-width:155px;font-size:10px}.footer-meta{width:100%;flex-direction:row;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;font-size:9px}.dialog-content{padding:30px 22px}.dialog-content h2{font-size:34px}.dialog-content .eyebrow{font-size:8px;margin-top:9px}input,select,textarea{font-size:16px}.result-actions{gap:17px}.result-actions .button{font-size:12px}.result-actions .text-link{font-size:12px}.form-grid{gap:12px}}
@media(max-width:370px){h1{font-size:60px}.hero .eyebrow{font-size:7px}.hero .button{padding:17px 15px;font-size:11px;gap:16px}.art-note{font-size:17px}.program-card{padding:22px}.program-details>div{font-size:11px}.brand-name{font-size:25px}.header .button{gap:12px}.form-grid{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

@media(max-width:700px){h1 em{font-size:clamp(32px,9.6vw,45px);white-space:normal;letter-spacing:-1.5px;display:inline-block}}

.club-settings{padding-left:1.25rem;margin:0 0 1.5rem;font-size:1rem;line-height:1.7;color:var(--muted)}.club-settings li{padding-left:.2rem;margin-bottom:.6rem}

/* Monthly craft offering, alongside the weekly crochet club. */
.materials-note{font-size:11px;font-weight:600;color:#624b6d;line-height:1.6;margin:-10px 0 22px}.monthly-crafts{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;margin-top:62px;padding:42px;background:#e9eade;border-radius:4px;scroll-margin-top:28px}.craft-copy .eyebrow{margin-bottom:19px}.craft-copy h2{font-size:49px;margin-bottom:23px}.craft-copy>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.85}.craft-copy .craft-intro{font-family:var(--serif);font-size:23px!important;line-height:1.4!important;color:var(--ink)!important;max-width:330px;margin-bottom:18px}.craft-copy h3{font-size:12px;font-weight:600;margin:24px 0 12px}.craft-projects{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;list-style:none;padding:0;margin:0 0 15px;font-size:12px;color:var(--ink)}.craft-projects li{position:relative;padding-left:13px}.craft-projects li::before{content:'·';position:absolute;left:0;color:var(--purple);font-weight:700}.craft-copy .craft-more{font-size:11px!important;margin-bottom:0}.craft-card{background:#f8f5ee;border-color:#d8dacd;align-self:center}.craft-card .program-details>div{border-color:#dddfd3}.craft-card>h3{font-size:29px}.program-summary{font-size:11px;line-height:1.7;color:var(--purple);margin:10px 0 18px}.header nav{gap:25px}
@media(max-width:1000px){.monthly-crafts{gap:6%;padding:29px}.craft-copy h2{font-size:40px}.craft-projects{grid-template-columns:1fr;gap:7px}.craft-card{padding:24px 21px}.craft-card>h3{font-size:27px}.header nav{gap:17px;font-size:12px}h1{font-size:clamp(48px,5.5vw,72px);letter-spacing:-2px}}
@media(max-width:700px){.monthly-crafts{grid-template-columns:1fr;gap:30px;padding:26px 20px;margin-top:37px}.craft-copy h2{font-size:44px}.craft-copy .eyebrow{font-size:9px}.craft-projects{grid-template-columns:1fr 1fr;gap:10px 15px}.craft-card{padding:25px 20px}.craft-card .program-details>div{font-size:11px}.materials-note{font-size:11px}.monthly-crafts .button{padding:17px 15px;font-size:11px;gap:15px}h1{font-size:clamp(41px,10.6vw,63px);line-height:1.08;letter-spacing:-1.6px}h1 em{font-size:.78em;letter-spacing:-1px}.hero-copy .eyebrow{font-size:8px}}

/* Attributed review excerpts, grouped within the introduction to Anna. */
.review-block{grid-column:1/-1;width:100%;border-top:1px solid var(--line);padding-top:42px;margin-top:4px;order:3}.review-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:28px}.review-heading .eyebrow{margin-bottom:14px}.review-heading h3{font-family:var(--serif);font-size:39px;font-weight:400;line-height:1.17;letter-spacing:-1px;margin:0}.review-heading h3 em{color:var(--purple);font-weight:400}.review-heading>p{font-size:12px;color:var(--muted);max-width:270px;margin-bottom:3px}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.review-card{margin:0;background:#efe8f0;border:1px solid #e2d8e4;border-radius:4px;padding:25px 24px;display:flex;flex-direction:column}.review-card:nth-child(2){background:#f0e6e2;border-color:#e4d8d3}.review-card:nth-child(3){background:#e9eade;border-color:#dcdecf}.review-kind{font-size:8px;font-weight:600;letter-spacing:1.4px;color:var(--muted)}.review-card blockquote{margin:23px 0 24px;flex:1}.review-card blockquote p{font-family:var(--serif);font-size:25px;line-height:1.4;letter-spacing:-.35px;margin:0}.review-card figcaption{display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--muted)}.review-card .review-name{font-size:12px;font-weight:600;color:var(--ink)}.review-source{margin-top:23px;font-size:11px;line-height:1.8;max-width:100%}.review-source>span[aria-hidden]{flex-shrink:0}
@media(max-width:1000px){.review-heading h3{font-size:34px}.review-card{padding:22px 18px}.review-card blockquote p{font-size:22px}.review-kind{font-size:7px;letter-spacing:1px}.review-grid{gap:12px}}
@media(max-width:700px){.review-block{padding-top:32px;margin-top:0}.review-heading{display:block;margin-bottom:23px}.review-heading .eyebrow{font-size:9px}.review-heading h3{font-size:36px}.review-heading>p{font-size:13px;max-width:100%;margin:18px 0 0}.review-grid{grid-template-columns:1fr;gap:15px}.review-card{padding:24px}.review-kind{font-size:8px;letter-spacing:1.4px}.review-card blockquote{margin:17px 0 20px}.review-card blockquote p{font-size:26px}.review-card figcaption{font-size:11px}.review-source{font-size:12px;gap:13px}}
