/* CKYSTONES editable pages. Scoped to prevent a collision with existing course markup. */
.cky-page{--cky-page-cream:#faf7f1;--cky-page-ink:#272321;--cky-page-wine:#571e2d;--cky-page-gold:#a9844d;--cky-page-muted:#6a635a;--cky-page-line:#e2d8c9;background:var(--cky-page-cream);color:var(--cky-page-ink);width:100%;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7;overflow-wrap:anywhere}
.cky-page *{box-sizing:border-box}
.cky-page h1,.cky-page h2,.cky-page h3{font-family:Georgia,'Times New Roman',serif;color:var(--cky-page-wine);font-weight:400;letter-spacing:-.025em;line-height:1.12;text-wrap:balance}
.cky-page h1{font-size:clamp(39px,5.5vw,72px);margin:0 0 28px;max-width:920px}
.cky-page h2{font-size:clamp(29px,3.4vw,46px);margin:0 0 26px}
.cky-page h3{font-size:clamp(24px,2.1vw,29px);margin:0 0 16px}
.cky-page p{margin:0 0 20px}
.cky-page a{color:var(--cky-page-wine);text-decoration:underline;text-underline-offset:4px}
.cky-page a:focus-visible,.cky-page summary:focus-visible,.cky-page button:focus-visible{outline:3px solid var(--cky-page-gold);outline-offset:5px}
.cky-page img{max-width:100%;height:auto;display:block;border:0}
.cky-page figure{margin:0;min-width:0}
.cky-page .cky-kicker{font-family:Arial,Helvetica,sans-serif;font-size:11px;line-height:1.5;letter-spacing:.19em;text-transform:uppercase;font-weight:700;color:#8a6038;margin:0 0 22px}
.cky-page .cky-lead{font-size:clamp(19px,2vw,23px);line-height:1.55;color:var(--cky-page-muted);max-width:790px;margin:0 0 25px}
.cky-page .cky-hero,.cky-page .cky-section,.cky-page>nav{width:min(1220px,calc(100% - 80px));margin:0 auto}
.cky-page .cky-hero{padding:86px 0 68px;min-height:0;background:none;position:relative}
.cky-page .cky-hero:before,.cky-page .cky-hero:after{display:none}
.cky-page .cky-section{padding:70px 0;border-top:1px solid var(--cky-page-line)}
.cky-page .cky-grid{display:grid;gap:34px;align-items:start}
.cky-page .cky-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cky-page .cky-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cky-page .cky-hero.cky-grid{align-items:center;gap:60px}
.cky-page .cky-hero-media{border-radius:2px;overflow:hidden;background:#eee8df;aspect-ratio:5/4}
.cky-page .cky-hero-media img{width:100%;height:100%;object-fit:cover}
.cky-page .cky-portrait{border:1px solid var(--cky-page-line);padding:16px;background:#fffdf9;max-width:460px;margin-left:auto;width:100%}
.cky-page .cky-portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 30%}
.cky-page .cky-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}
.cky-page>nav.cky-actions{margin-top:0;margin-bottom:45px}
.cky-page .cky-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 21px;border:1px solid var(--cky-page-wine);border-radius:2px;background:var(--cky-page-wine);color:#fffdf8;text-decoration:none;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:600;line-height:1.45;letter-spacing:.025em;text-align:center;box-shadow:none}
.cky-page .cky-button:hover{background:#3e1420;color:#fff}
.cky-page .cky-button-secondary{background:transparent;color:var(--cky-page-wine)}
.cky-page .cky-button-secondary:hover{background:#eee6dc;color:var(--cky-page-wine)}
.cky-page .cky-card{padding:30px;border:1px solid var(--cky-page-line);background:#fffdf9;min-width:0;height:100%}
.cky-page .cky-card p:last-child{margin-bottom:0}
.cky-page .cky-card .cky-button{margin-top:12px}
.cky-page .cky-price-card{display:flex;flex-direction:column}
.cky-page .cky-price-card ul{padding-left:20px;margin:5px 0 28px}
.cky-page .cky-price-card .cky-button{margin-top:auto;align-self:flex-start}
.cky-page .cky-price{font:44px/1.1 Georgia,'Times New Roman',serif;color:var(--cky-page-wine);margin:9px 0 25px}
.cky-page .cky-note{color:var(--cky-page-muted);font-size:13px;line-height:1.65;margin:25px 0 0}
.cky-page .cky-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cky-page .cky-gallery figure{background:#fff;min-width:0;overflow:hidden}
.cky-page .cky-gallery img{aspect-ratio:1/1;width:100%;object-fit:contain}
.cky-page .cky-gallery-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.cky-page .cky-gallery-two img{aspect-ratio:3/2;object-fit:cover}
.cky-page .cky-designer-card{border:1px solid var(--cky-page-line);background:#fffdf9;height:100%;min-width:0;display:flex;flex-direction:column}
.cky-page .cky-designer-card>a{display:block;overflow:hidden}
.cky-page .cky-designer-card>a img{aspect-ratio:4/4.4;width:100%;object-fit:cover;object-position:center 25%}
.cky-page .cky-designer-card>div{padding:25px;display:flex;flex-direction:column;flex:1}
.cky-page .cky-designer-card .cky-kicker{margin-bottom:10px}
.cky-page .cky-designer-card .cky-button{margin-top:auto;align-self:flex-start}
.cky-page .cky-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:0;margin:0;list-style:none}
.cky-page .cky-steps li{padding-top:18px;border-top:1px solid var(--cky-page-gold);min-width:0}
.cky-page .cky-steps li::marker{content:''}
.cky-page .cky-step-number{font-size:12px;letter-spacing:.14em;color:#987746;display:block;margin-bottom:20px}
.cky-page .cky-steps h3{font-size:26px}
.cky-page .cky-steps p{font-size:15px;line-height:1.7}
.cky-page .cky-faq{border-top:1px solid var(--cky-page-line)}
.cky-page .cky-faq details{padding:22px 0;border-bottom:1px solid var(--cky-page-line)}
.cky-page .cky-faq summary{cursor:pointer;position:relative;padding-right:30px;color:var(--cky-page-wine);font-size:17px;font-weight:600;line-height:1.5}
.cky-page .cky-faq details>p,.cky-page .cky-faq details>div{padding-top:18px;max-width:960px;color:var(--cky-page-muted)}
.cky-page .cky-faq details p:last-child{margin-bottom:0}
.cky-page .cky-prose{max-width:860px}
.cky-page .cky-video{display:block;max-width:900px;width:100%;max-height:650px;background:#211c1c;margin:0 auto}
.cky-page .cky-cta{padding:65px max(40px,calc((100% - 1220px)/2));background:var(--cky-page-wine);color:#f5eee4;margin:0}
.cky-page .cky-cta h1,.cky-page .cky-cta h2,.cky-page .cky-cta h3{color:#f6e7c7}
/* The site's global typography sets p/li colors with !important. Restrict the
   override to text on these dark panels, leaving button labels independent. */
.cky-page .cky-cta p,.cky-page .cky-cta li,.cky-page .cky-cta address,.cky-page .cky-cta .cky-lead,.cky-page .cky-cta .cky-note{color:#f5eee4!important}
.cky-page .cky-cta .cky-kicker{color:#f6e7c7!important}
.cky-page .cky-cta p{max-width:780px}
.cky-page .cky-cta a:not(.cky-button){color:#f6e7c7}
.cky-page .cky-cta .cky-button{background:#f6eedf;border-color:#f6eedf;color:var(--cky-page-wine)}
.cky-page .cky-cta .cky-button-secondary{background:transparent;color:#fffdf8;border-color:#d1b58c}
.cky-page address{font-style:normal;margin-bottom:20px}
.cky-page [id]{scroll-margin-top:110px}
@media(max-width:1024px){.cky-page .cky-hero.cky-grid{gap:35px}.cky-page .cky-grid-3{gap:18px}.cky-page .cky-card{padding:24px}.cky-page .cky-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.cky-page .cky-designer-card>div{padding:20px}}
@media(max-width:760px){.cky-page .cky-hero,.cky-page .cky-section,.cky-page>nav{width:calc(100% - 36px)}.cky-page .cky-hero{padding:45px 0}.cky-page .cky-section{padding:45px 0}.cky-page .cky-grid-2,.cky-page .cky-grid-3{grid-template-columns:minmax(0,1fr)}.cky-page .cky-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cky-page .cky-portrait{max-width:380px;margin:0 auto}.cky-page .cky-hero-media{max-height:400px}.cky-page .cky-gallery-two{grid-template-columns:minmax(0,1fr)}.cky-page .cky-cta{padding:42px 18px}.cky-page .cky-designer-card{display:grid;grid-template-columns:minmax(90px,35%) minmax(0,1fr);align-items:stretch}.cky-page .cky-designer-card>a img{height:100%;aspect-ratio:auto;object-fit:cover}.cky-page .cky-designer-card h3{font-size:25px}.cky-page .cky-designer-card .cky-button{padding:10px 12px;font-size:12px}}
@media(max-width:420px){.cky-page .cky-steps{grid-template-columns:minmax(0,1fr)}.cky-page .cky-actions .cky-button{width:100%}.cky-page .cky-card{padding:23px}.cky-page .cky-designer-card{display:flex}.cky-page .cky-designer-card>a img{max-height:340px;object-fit:cover}}
