@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--ink:#392224;--muted:#6d5454;--berry:#922e48;--paper:#fffcf7;--pink:#f8e9e6;--line:#e8d6d0;--serif:"Playfair Display",Georgia,serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 "DM Sans",Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}h1,h2,h3,.brand{font-family:var(--serif);line-height:1.1}h1{font-size:clamp(3.45rem,6.8vw,6.6rem);letter-spacing:-.07em;margin:15px 0 21px;font-weight:600}h1 em,.brand i{color:var(--berry);font-weight:500}h2{font-size:clamp(2.2rem,4.2vw,3.7rem);letter-spacing:-.045em;margin:8px 0 12px}h3{font-size:1.5rem;margin:10px 0}p{color:var(--muted);margin:0 0 16px}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}header{border-bottom:1px solid var(--line)}nav,footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0}.brand{text-decoration:none;font-size:1.65rem;font-weight:700;white-space:nowrap}.brand span{display:block;font:700 .55rem "DM Sans",sans-serif;letter-spacing:.22em;margin-top:6px}.links{display:flex;gap:28px}.links a,.textlink,footer a{font-weight:700;text-decoration:none}.links a:hover,.textlink:hover,footer a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border:1px solid var(--berry);border-radius:6px;padding:10px 17px;background:var(--berry);color:white;text-decoration:none;font-weight:700}.button:hover{filter:brightness(.9)}.outline{background:transparent;color:var(--berry)}.hero{background:var(--pink)}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;align-items:stretch;min-height:475px}.hero-copy{padding:60px 20px 64px 0}.hero-copy>p:not(.eyebrow){max-width:450px;font-size:1.08rem}.eyebrow{color:var(--berry);font-size:.72rem;font-weight:700;letter-spacing:.19em;margin:0}.actions{display:flex;align-items:center;gap:21px;flex-wrap:wrap;margin-top:26px}.hero-image{min-height:340px;background:#dba3a3 url(hero.webp) center/cover no-repeat}.stats{display:flex;justify-content:center;gap:7%;padding:20px 0;border-bottom:1px solid var(--line);text-align:center}.stats b{font-family:var(--serif);font-size:1.45rem;color:var(--berry);margin-right:4px}.section{padding-top:58px;padding-bottom:62px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:25px}.grid article,.studio-grid article{border:1px solid var(--line);border-radius:10px;background:#fffdf9;padding:20px;display:flex;flex-direction:column;align-items:flex-start}.grid article p{font-size:.91rem}.grid article button{margin-top:auto}.level-card{border-top:4px solid var(--berry)!important}.level-card:nth-child(2){border-top-color:#bf6d55!important}.level-card:nth-child(3){border-top-color:#936c49!important}.level-card:nth-child(4){border-top-color:#714956!important}.recipe-section,.progress-section{background:#f7ece6}.filters,.studio-grid,#cert-form:not([hidden]){display:grid;gap:16px}.filters{grid-template-columns:2fr 1fr 1fr}.studio-grid{grid-template-columns:1fr 1fr}.studio-grid article{display:block}.small{font-size:.86rem}label{font-weight:600}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;border:1px solid #bea29d;background:white;color:var(--ink);padding:8px 10px;border-radius:5px;margin:4px 0 10px}fieldset{border:1px solid var(--line);border-radius:6px;margin:12px 0;padding:10px}fieldset label{display:block;font-weight:400}progress{width:min(500px,100%);accent-color:var(--berry);margin-bottom:10px}#cert-form{max-width:450px;margin-bottom:14px}footer{border-top:1px solid var(--line)}dialog{width:min(680px,calc(100% - 26px));max-height:90vh;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--paper);padding:20px 25px 26px}dialog::backdrop{background:#32151dbc}.dialog-top{display:flex;justify-content:flex-end}.close{background:transparent;border:1px solid var(--line);border-radius:50%;font-size:1.4rem;width:38px;height:38px;line-height:1}.lesson-meta{font-weight:700}.ingredient-list{columns:2;padding-left:20px}li{margin-bottom:5px}.tip{background:var(--pink);padding:13px;border-radius:7px}#print-area{text-align:center;border:4px double var(--berry);padding:30px;margin-bottom:15px}#learner{font-size:2rem;overflow-wrap:anywhere}:focus-visible{outline:3px solid #ad5672;outline-offset:3px}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.links{gap:12px}.hero-copy{padding:42px 18px 42px 0}.wrap{width:calc(100% - 36px)}}
@media(max-width:640px){nav{flex-wrap:wrap}.links{order:3;width:100%;justify-content:space-between;font-size:.87rem}.hero-grid,.studio-grid{grid-template-columns:1fr}.hero-image{min-height:265px;margin-bottom:18px;border-radius:8px}.hero-copy{padding:36px 0 25px}.section{padding-top:38px;padding-bottom:40px}.grid{gap:8px}.grid article{padding:12px}.grid h3{font-size:1.24rem}.filters{grid-template-columns:1fr 1fr}.filters label:first-child{grid-column:span 2}.stats{gap:4%;font-size:.85rem}.ingredient-list{columns:1}}
@media print{body:has(#certificate[open])>*:not(#certificate){display:none}#certificate[open]{position:static;max-height:none;width:100%;max-width:none;border:none;overflow:visible}#certificate::backdrop,#certificate .dialog-top,#print{display:none}}
