@layer ake-legacy {
@font-face {
  font-family: 'Bagel Fat One';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('ake-bagel-fat-one-regular-latin.woff2') format('woff2');
}
@font-face {
  font-family: 'Questrial';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('ake-questrial-regular-latin.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(ake-font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(ake-font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(ake-font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(ake-font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'DynaPuff';
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-display: swap;
  src: url(ake-font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'DynaPuff';
  font-style: normal;
  font-weight: 500;
  font-stretch: normal;
  font-display: swap;
  src: url(ake-font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'DynaPuff';
  font-style: normal;
  font-weight: 600;
  font-stretch: normal;
  font-display: swap;
  src: url(ake-font-6.ttf) format('truetype');
}

/* AKE's original palette, lettering, photographs and paper character. */
:root{--pink:#d6aa9f;--olive:#414331;--cream:#f0e9df;--brown:#674534;--sage:#87a092;--paper:#f0e9df;--ink:#414331;--rose:#d6aa9f;--green:#87a092;--line:#41433126;--muted:#666856;--ake-space:clamp(1.25rem,4vw,4rem)}
body{font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--brown);outline-offset:4px}button:disabled{cursor:wait}a,button{transition:background-color .18s ease,color .18s ease,translate .18s ease,box-shadow .18s ease}img{max-width:100%}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#ake-root{min-height:100vh}
.ake-landing header{padding:1.125rem var(--ake-space);border-bottom:1px solid var(--line)}.ake-landing .hero{padding:1.5rem var(--ake-space) 3.5rem;background:var(--pink)}.ake-landing .brand-intro{margin:0 0 1.5rem}.ake-landing .brand-lettering{position:relative;display:flex;justify-content:center}.ake-landing .original-lettering{width:100%;max-width:1200px;aspect-ratio:5.8;object-fit:cover;object-position:center 48%;mix-blend-mode:multiply}.ake-landing .hero-top{max-width:1280px;margin:0 auto 2.5rem;gap:2rem}.ake-landing h1{font-size:clamp(2rem,4vw,3.75rem);line-height:1.16;max-width:800px}.ake-landing .hero-note{font-size:1rem;line-height:1.7}.ake-landing .collage{max-width:1240px;margin-inline:auto;gap:clamp(1rem,3vw,3rem);grid-template-columns:.92fr 1.16fr .86fr;padding-inline:.5rem}.ake-landing .photo{background:var(--cream);padding:.625rem .625rem 1rem;border:1px solid #6745341a;box-shadow:0 8px 18px #67453416}.ake-landing .photo img{height:clamp(220px,24vw,340px);object-position:center}.ake-landing .photo:nth-child(2) img{height:clamp(260px,29vw,410px)}.ake-landing .photo:nth-child(3){margin-top:3rem}.ake-landing .photo figcaption{font-size:.875rem;margin:.875rem .25rem 0}.ake-landing .hero-bottom{max-width:1280px;margin:2.5rem auto 0;gap:1.5rem}.ake-landing .pill{font-size:.9375rem;padding:.875rem 1.375rem;line-height:1.4}.ake-landing .paths{padding:5rem var(--ake-space);gap:clamp(2rem,5vw,5rem);max-width:1440px;margin:auto}.ake-landing .path img{height:clamp(320px,34vw,480px)}.ake-landing .path:nth-child(2){padding-top:4rem}.ake-landing .path-info{align-items:baseline;flex-wrap:wrap}.ake-landing h2{font-size:clamp(2rem,3.5vw,3.25rem);font-weight:400;line-height:1.2}.ake-landing .path p{font-size:1rem}.ake-landing .catalog{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:1.75rem}.ake-landing .catalog article{padding:1.5rem 0;border-bottom:1px solid var(--line)}.ake-landing .catalog h3{font-size:1.25rem;line-height:1.4}.ake-landing .catalog p{margin:.75rem 0;max-width:100%}.ake-landing .gallery{padding:4.5rem var(--ake-space);background:var(--cream)}.ake-landing .section-top,.ake-landing .gallery-grid{max-width:1280px;margin-inline:auto}.ake-landing .gallery-grid{gap:clamp(1.25rem,4vw,4rem)}.ake-landing .gallery-grid figure{min-width:0}.ake-landing .gallery-grid .art-card{background:#fffdf8;box-shadow:0 8px 20px #67453412}.ake-landing .gallery-grid .art-card img{object-fit:contain}.ake-landing .gallery-link{margin-left:0}.ake-landing .story{padding:5rem var(--ake-space);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem)}.ake-landing .story img{object-position:center 40%;border:.75rem solid var(--cream);max-width:520px;justify-self:center}.ake-landing .story p{font-size:1rem;line-height:1.8}.ake-landing .story blockquote{font-size:clamp(1.25rem,2vw,1.75rem)}.ake-landing .contact{padding:3.5rem var(--ake-space);background:var(--sage)}.ake-landing footer{padding:2rem var(--ake-space);border-top:1px solid var(--line)}
/* Editorial hero: original lettering and paper photographs, no operational changes. */
.ake-landing .hero {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: clamp(2rem, 4vw, 4rem);
  padding-block: clamp(2.5rem, 6vw, 6rem) 2rem;
}
.ake-landing .hero-copy { min-width: 0; max-width: 660px; }
.ake-landing .brand-intro { margin-bottom: 1.75rem; }
.ake-landing .original-lettering { max-width: 460px; }
.ake-landing .hero .eyebrow { margin-bottom: 1rem; font-size: .75rem; }
.ake-landing .hero h1 { font-size: clamp(2rem, 3.5vw, 3.75rem); line-height: 1.18; letter-spacing: -.035em; }
.ake-landing .hero-emphasis { color: var(--brown); }
.ake-landing .hero-note { margin-top: 1.5rem; max-width: none; padding: 0; }
.ake-landing .hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.ake-landing .hero-signature { margin-top: 1.5rem; font-size: .8125rem; }
.ake-landing .hero .collage {
  width: 100%; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem; padding: 1.25rem .5rem; align-items: center;
}
.ake-landing .photo {
  --ake-paper-angle: -4deg;
  transform: perspective(900px) rotate(var(--ake-paper-angle)) rotateX(var(--ake-tilt-x, 0deg)) rotateY(var(--ake-tilt-y, 0deg));
  transition: transform .24s ease-out, translate .28s ease;
}
.ake-landing .photo:nth-child(2) { --ake-paper-angle: 3deg; transform: perspective(900px) rotate(var(--ake-paper-angle)) rotateX(var(--ake-tilt-x, 0deg)) rotateY(var(--ake-tilt-y, 0deg)); margin-top: 4rem; }
.ake-landing .photo:nth-child(3) { --ake-paper-angle: -2deg; transform: perspective(900px) rotate(var(--ake-paper-angle)) rotateX(var(--ake-tilt-x, 0deg)) rotateY(var(--ake-tilt-y, 0deg)); grid-column: 1 / -1; width: 62%; margin: -.25rem auto 0; }
.ake-landing .hero .photo img { height: clamp(180px, 19vw, 275px); object-fit: contain; }
.ake-landing .hero .photo:nth-child(3) img { height: clamp(150px, 13vw, 190px); }
.ake-landing .hero-discover { grid-column: 1 / -1; justify-self: center; font-size: .8125rem; padding: .75rem; text-underline-offset: 5px; }
.ake-landing .hero-discover span { display: inline-block; margin-left: .75rem; }
@media(max-width:1000px) {
  .ake-landing .hero { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .ake-landing .hero-copy { max-width: 720px; margin-inline: auto; width: 100%; }
  .ake-landing .brand-lettering { justify-content: flex-start; }
  .ake-landing .hero .collage { max-width: 720px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ake-landing .hero .photo:nth-child(3) { grid-column: auto; width: 100%; margin-top: 2rem; }
  .ake-landing .hero .photo img, .ake-landing .hero .photo:nth-child(3) img { height: clamp(150px, 24vw, 240px); }
}
@media(max-width:720px) {
  .ake-landing .hero { padding-top: 2rem; gap: 1.5rem; }
  .ake-landing .hero h1 { font-size: clamp(1.75rem, 6.8vw, 2.75rem); }
  .ake-landing .hero .collage { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
  .ake-landing .hero .photo:nth-child(3) { display: block; grid-column: 1 / -1; width: 65%; margin-top: .5rem; }
  .ake-landing .hero .photo:nth-child(2) { margin-top: 2rem; }
  .ake-landing .hero .photo img { height: clamp(150px, 42vw, 240px); }
  .ake-landing .hero .photo:nth-child(3) img { height: 150px; }
  .ake-landing .hero .photo figcaption { font-size: .75rem; line-height: 1.5; }
  .ake-landing .hero-actions .pill { padding-inline: 1rem; }
}
@media(prefers-reduced-motion:reduce) {
  .ake-landing .photo { transform: rotate(var(--ake-paper-angle)) !important; }
}
/* Controller-owned views share tokens, not new handlers or business states. */
.ake-studio .sidebar{background:var(--cream);border-right:1px solid var(--line);padding:2rem 1.25rem}.ake-studio .sidebar .ake-wordmark img{border-radius:0;width:100%;height:100px;object-fit:cover;object-position:center 48%;mix-blend-mode:multiply}.ake-studio .sidebar .identity small{margin-top:.5rem;line-height:1.6}.ake-studio .nav-label{margin-top:2rem}.ake-studio nav button{border-radius:5px;padding:.75rem 1rem}.ake-studio nav button[aria-current=page]{box-shadow:inset 3px 0 var(--pink)}.ake-studio .workspace{background:#fffdf8}.ake-studio .workspace>header{padding:1.5rem 2.5rem;background:var(--cream)}.ake-studio .demo-note{background:#d6aa9f30;color:var(--ink);padding:1rem 2.5rem;border-bottom:1px solid var(--line)}.ake-studio main{padding:2.5rem;min-width:0}.ake-studio .page-heading{padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.ake-studio h1{font-size:clamp(1.75rem,3vw,2.75rem);font-weight:400}.ake-studio .card,.ake-studio .metric,.ake-studio .table-wrap{border-radius:6px;border-color:var(--line);box-shadow:0 3px 0 #41433105}.ake-studio .metric{border-top:3px solid var(--rose)}.ake-studio .tag{white-space:normal}.ake-studio .button,.ake-studio .secondary{border-radius:6px}.ake-studio .workspace>footer{font-size:.8125rem;line-height:1.7;border-top:1px solid var(--line)}
.ake-access,.ake-profile,.ake-signup{background:var(--cream)}.access-page{border:1px solid var(--line);border-top:7px solid var(--pink);border-radius:6px;background:#fffdf8;padding:clamp(1.25rem,4vw,3rem);max-width:650px;margin:clamp(1.25rem,6vw,5rem) auto;box-shadow:8px 8px 0 #d6aa9f38}.access-page>img{border-radius:50%;width:88px;height:88px;object-fit:contain;margin-bottom:1.75rem}.access-page h1{font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.25}.access-page p{line-height:1.8;margin:1rem 0}.access-page a.button{display:inline-flex;max-width:100%;text-decoration:none;line-height:1.5}.access-page .panel-form{gap:1.25rem}.panel-form label{font-size:.9375rem;line-height:1.6}.panel-form input{padding:.875rem;border-radius:5px;border-color:#41433160;background:#fffdf8}.access-page [role=status]:not(:empty){background:#d6aa9f30;border-left:3px solid var(--pink);padding:1rem;font-size:.9375rem}.access-page .button{border-radius:6px}dialog{border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:8px;box-shadow:0 20px 70px #41433135}dialog::backdrop{background:#41433165}dialog input,dialog select,dialog textarea{max-width:100%}
@media(hover:hover) and (pointer:fine){a.pill:hover,.button:hover,.secondary:hover{translate:0 -2px;box-shadow:0 3px 0 #67453424}.ake-landing .photo,.ake-landing .gallery-grid figure{transition:translate .28s ease}.ake-landing .photo:hover,.ake-landing .gallery-grid figure:hover{translate:0 -5px}.ake-studio nav button:hover{translate:3px 0}}
a:active,button:active{translate:0 1px}
@media(max-width:900px){.ake-studio .workspace>header,.ake-studio .demo-note{padding:1rem 1.25rem}.ake-studio main{padding:1.5rem 1.25rem}.ake-studio .sidebar{padding:1rem}.ake-studio .sidebar .ake-wordmark img{width:140px;height:55px}.ake-studio .nav-label{margin-top:1rem}.ake-studio .workspace{margin-left:0}}
@media(max-width:720px){.ake-landing .hero{padding-bottom:2.5rem}.ake-landing h1{font-size:clamp(1.875rem,7vw,2.75rem)}.ake-landing .original-lettering{aspect-ratio:4.5}.ake-landing .hero-top{margin-bottom:2rem}.ake-landing .hero-note{max-width:none}.ake-landing .collage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}.ake-landing .photo img,.ake-landing .photo:nth-child(2) img{height:clamp(170px,45vw,280px)}.ake-landing .photo:nth-child(3){display:none}.ake-landing .hero-bottom{margin-top:2rem}.ake-landing .paths{padding-block:3rem;grid-template-columns:minmax(0,1fr)}.ake-landing .path:nth-child(2){padding-top:0}.ake-landing .path img{height:360px}.ake-landing .gallery{padding-block:3rem}.ake-landing .gallery-grid{gap:1.25rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ake-landing .gallery-grid .art-card{max-width:300px;width:90%}.ake-landing .story{grid-template-columns:minmax(0,1fr);padding-block:3rem}.ake-landing .story img{width:90%;height:380px}.ake-landing .contact{padding-block:2.5rem}.access-page{margin:1.25rem 1rem;box-shadow:4px 4px 0 #d6aa9f38}.access-page>img{width:72px;height:72px}.ake-studio .page-heading{gap:1rem;flex-wrap:wrap}.ake-studio .card{padding:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}a:active,button:active,.photo:hover,.gallery-grid figure:hover{translate:none!important}}
/* The original materials remain light paper in either OS scheme. */
:root{color-scheme:light}
/* Keep every original mark, hand and face in its frame. Only blank brand paper is trimmed. */
.ake-landing h1{letter-spacing:-.035em}
.ake-landing .original-lettering{aspect-ratio:3.4;object-position:center 55%}
.ake-studio .sidebar .ake-wordmark img{height:auto;aspect-ratio:3.4;object-fit:cover;object-position:center 55%}
.ake-landing .original-lettering,.ake-studio .sidebar .ake-wordmark img{mix-blend-mode:normal}
.ake-landing .photo img,.ake-landing .path>img,.ake-landing .gallery-grid img,.ake-landing .story>img{object-fit:contain}
.ake-landing .photo img,.ake-landing .path>img,.ake-landing .gallery-grid img{background:var(--cream)}
.ake-studio .workspace,.ake-studio #view,.ake-studio .workspace>header{min-width:0}
.ake-studio .workspace>header{flex-wrap:wrap}
.access-page{overflow-wrap:anywhere}
.access-page .panel-form{min-width:0}
.access-page .panel-form input{width:100%}
@media(max-width:900px) and (min-width:651px){.ake-studio .workspace{margin-left:210px}}
@media(max-width:720px){.ake-landing .original-lettering{aspect-ratio:3.4}}
@media(min-width:651px){.ake-studio .sidebar{overflow-y:auto}.ake-studio .sidebar nav{grid-template-columns:minmax(0,1fr);overflow:visible}.ake-studio .sidebar nav button{font-size:14px;text-align:left;padding:.65rem .875rem}.ake-studio #payment-settings-nav{grid-column:auto;grid-template-columns:minmax(0,1fr)}.ake-studio .sidebar-bottom{display:grid;margin-top:auto;padding-top:1.25rem}}
.ake-studio .studio-welcome>img{object-fit:contain;background:var(--cream)}
.ake-landing .path:focus-within,.ake-landing .gallery:focus-within{outline:1px solid var(--line);outline-offset:8px}
.ake-studio .card:focus-within,.ake-studio .metric:focus-within{border-color:var(--olive)}
@keyframes ake-paper-arrive{from{opacity:.75;translate:0 6px}to{opacity:1;translate:0 0}}
.ake-studio #view>.card,.ake-studio #view>.studio-welcome,.ake-studio #view>.stripe-settings,dialog[open]{animation:ake-paper-arrive .22s ease-out}
@media(prefers-reduced-motion:reduce){a,button,.ake-landing .photo,.ake-landing .gallery-grid figure{translate:none!important}}
/* Agenda first, followed directly by published pieces. */
.ake-landing .hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;padding-block:2rem;gap:clamp(1.5rem,4vw,4rem)}
.ake-landing .hero .brand-intro{margin-bottom:.75rem}.ake-landing .hero .original-lettering{max-width:310px}.ake-landing .hero h1{font-size:clamp(1.75rem,3vw,3rem)}.ake-landing .hero-note{margin-top:1rem}.ake-landing .hero-actions{margin-top:1rem}
.ake-landing .agenda{min-width:0;background:var(--cream);border:1px solid var(--line);padding:clamp(1.25rem,2vw,2rem);border-radius:8px;box-shadow:6px 6px 0 #67453418;scroll-margin-top:1rem}.ake-landing .agenda h2{font-size:clamp(1.75rem,2.5vw,2.5rem)}
.ake-landing .catalog{margin-top:1rem;padding-top:.75rem}.ake-landing .catalog article{padding:1rem 0}.ake-landing .catalog h3{margin:.25rem 0;font-size:1.375rem}.ake-landing .catalog .eyebrow{font-size:.7rem;margin:0}.ake-landing .catalog-price{white-space:nowrap;font-size:1.25rem;font-weight:600}.ake-landing .offer-schedule{list-style:none;padding:0;margin:.875rem 0}.ake-landing .offer-schedule li{display:grid;gap:.25rem;margin:.75rem 0;text-transform:capitalize}.ake-landing .offer-schedule span{font-variant-numeric:tabular-nums}.ake-landing .catalog-refresh{margin:1rem 0}.ake-landing .course-note{font-weight:500}
.ake-landing .pieces-section{padding:2rem var(--ake-space);background:var(--cream);scroll-margin-top:1rem}.ake-landing .pieces-section>.catalog{max-width:1280px;margin-inline:auto}.ake-landing .pieces-section>.small{display:block;max-width:1280px;margin:auto}.ake-landing .carousel-controls{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.ake-landing .carousel-controls button{min-height:44px}.ake-landing .piece-track{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-bottom:1rem;scrollbar-width:thin}.ake-landing .catalog .piece-card{flex:0 0 min(340px,85%);min-width:0;padding:0 0 1.25rem;scroll-snap-align:start;overflow-wrap:anywhere}.ake-landing .piece-photo{aspect-ratio:1;background:#d6aa9f38;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;overflow:hidden}.ake-landing .piece-photo img{width:100%;height:100%;object-fit:contain}.ake-landing .piece-photo [hidden]{display:none}.ake-landing .photo-missing{font-size:.875rem}.ake-landing .studio-photos{padding:3rem var(--ake-space);background:var(--pink)}.ake-landing .studio-photos .collage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.ake-landing .studio-photos .photo{margin:0;width:100%;grid-column:auto}.ake-landing .studio-photos .photo img{height:clamp(170px,22vw,300px)}
@media(max-width:1000px){.ake-landing .hero{grid-template-columns:minmax(0,1fr);gap:1.25rem}.ake-landing .hero-copy{max-width:none}.ake-landing .hero .original-lettering{max-width:220px}.ake-landing .hero h1{font-size:clamp(1.75rem,4vw,2.5rem)}}
@media(max-width:720px){.ake-landing .hero{padding-block:1rem 1.5rem}.ake-landing .hero .original-lettering{max-width:180px}.ake-landing .hero .eyebrow{margin-bottom:.5rem}.ake-landing .hero-actions .pill{padding:.625rem 1rem}.ake-landing .pieces-section{padding-block:1.5rem}.ake-landing .pieces-section .section-top{display:block}.ake-landing .studio-photos .collage{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ake-landing .studio-photos .photo:nth-child(3){display:block;grid-column:1/-1;width:65%;justify-self:center}.ake-landing .agenda{padding:1.125rem}}
.ake-landing .agenda .catalog{padding-top:0}.ake-landing .agenda .offer-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem 1rem;padding:.875rem 0}.ake-landing .offer-card>.eyebrow,.ake-landing .offer-card>h3,.ake-landing .offer-card>.offer-description,.ake-landing .offer-card>.offer-schedule,.ake-landing .offer-card>details,.ake-landing .offer-card>[data-result]{grid-column:1/-1}.ake-landing .agenda .catalog p{margin:.25rem 0}.ake-landing .agenda .catalog h3{font-size:1.15rem}.ake-landing .agenda .offer-description{font-size:.875rem;line-height:1.5}.ake-landing .agenda .offer-schedule{margin:.25rem 0}.ake-landing .agenda .offer-schedule li{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin:.25rem 0;font-size:.9375rem}.ake-landing .agenda .offer-card>.small{grid-column:1/-1;font-size:.7rem;margin:0}.ake-landing .agenda .catalog-price{align-self:center;font-size:1.125rem}.ake-landing .agenda .offer-card>.pill{padding:.625rem 1rem}.ake-landing .catalog button.primary{background:var(--olive);color:var(--cream);border-color:var(--olive)}.ake-landing .agenda>p:not(.eyebrow){font-size:.875rem;margin:.5rem 0}.ake-landing .agenda details{font-size:.875rem}.ake-landing .agenda summary{cursor:pointer;padding:.5rem 0;text-decoration:underline;text-underline-offset:3px}.ake-landing .agenda .catalog-refresh{padding:.625rem 1rem;font-size:.8125rem;margin:.75rem 0}.ake-landing .studio-photos .collage .photo{display:block;grid-column:auto;width:100%;margin:0}
@media(max-width:720px){.ake-landing header{padding:.75rem var(--ake-space);gap:.5rem}.ake-landing header .wordmark img{width:36px!important;height:36px!important}.ake-landing header nav{font-size:.8125rem;gap:.5rem}.ake-landing .hero .original-lettering{max-width:135px}.ake-landing .hero .brand-intro{margin-bottom:.25rem}.ake-landing .hero h1{font-size:1.625rem}.ake-landing .hero-note{font-size:.875rem;line-height:1.4;margin-top:.5rem}.ake-landing .hero-actions{margin-top:.5rem;gap:.5rem}.ake-landing .hero-actions .pill{font-size:.8125rem;padding:.5rem .75rem}.ake-landing .agenda h2{font-size:1.5rem}.ake-landing .agenda{padding:1rem}.ake-landing .agenda .eyebrow{font-size:.625rem}.ake-landing .agenda .offer-description{font-size:.8125rem}.ake-landing .hero{gap:1rem}}
@media(max-width:400px){.ake-landing .agenda .offer-card{grid-template-columns:minmax(0,1fr)}.ake-landing .agenda .offer-card>.pill{justify-self:start}}

.ake-signup .auth-password-row { display:flex; gap:.5rem; min-width:0; }
.ake-signup .auth-password-row input { flex:1; width:0; min-width:0; }
.ake-signup .auth-password-row button { flex:none; min-height:3rem; padding:.5rem; border:1px solid #858574; color:#414331; background:#f0e9df; border-radius:.5rem; }
.ake-signup .auth-help { font-size:.8125rem; margin:.5rem 0; line-height:1.6; }
.ake-signup [data-auth-status] { padding:1rem; background:#f0e9df; border-left:3px solid #414331; overflow-wrap:anywhere; }
.ake-signup [data-auth-status][hidden], .ake-signup form[hidden] { display:none; }
.ake-signup form[aria-busy="true"] button[type="submit"] { opacity:.75; cursor:wait; }
.ake-signup input[aria-invalid="true"] { border-width:2px; }
.ake-signup button:focus-visible, .ake-signup input:focus-visible, .ake-signup a:focus-visible, .ake-signup [data-auth-status]:focus-visible { outline:3px solid #414331; outline-offset:4px; }
@media(prefers-reduced-motion:reduce) { .ake-signup *, .ake-signup *::before, .ake-signup *::after { animation:none!important; transition:none!important; } }

/* Manual de Identidad · public landing only. Keep controller views on their existing tokens. */
.ake-landing {
  --olive: #3D3B2D;
  --sage: #879D91;
  --pink: #CFADA0;
  --taupe: #9A9078;
  --cocoa: #A98C70;
  --cream: #E6DCCD;
  --brown: #3D3B2D;
  --paper: #E6DCCD;
  --ink: #3D3B2D;
  --rose: #CFADA0;
  --green: #879D91;
  --line: #3D3B2D33;
  --muted: #3D3B2D;
  --ake-space: clamp(1.25rem, 4.5vw, 5rem);
  background: var(--cream);
  color: var(--olive);
  font-family: 'Questrial', 'DM Sans', sans-serif;
  font-size: 1rem;
  line-height: 1.6;
}
.ake-landing :is(button, input, select, textarea) { font: inherit; }
.ake-landing :is(h1, h2, h3) {
  font-family: 'Bagel Fat One', 'DynaPuff', sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  text-wrap: balance;
}
.ake-landing h1 { font-size: clamp(2rem, 3.8vw, 3.5rem); line-height: 1.12; }
.ake-landing h2 { font-size: clamp(2rem, 3.2vw, 3rem); line-height: 1.16; }
.ake-landing h3 { font-size: 1.375rem; line-height: 1.3; }
.ake-landing :is(.eyebrow, .small) {
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.6;
}
.ake-landing :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid var(--olive);
  outline-offset: 5px;
}
.ake-landing header {
  background: var(--cream);
  padding: 1rem var(--ake-space);
  gap: 1rem 2rem;
  border-bottom: 1px solid var(--line);
}
.ake-landing header .wordmark { min-height: 44px; flex-shrink: 0; }
.ake-landing header .wordmark img {
  width: 240px !important;
  height: auto !important;
  max-height: 66px;
  object-fit: contain;
  border-radius: 0 !important;
}
.ake-landing header nav {
  gap: .5rem 1.5rem;
  font-size: 1rem;
  font-weight: 400;
}
.ake-landing header nav a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding-block: .5rem;
  text-underline-offset: 5px;
}
.ake-landing header nav a:hover { text-decoration: underline; }
.ake-landing header .studio-access { padding: .625rem 1.125rem; }
.ake-landing .hero {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  align-items: start;
  gap: clamp(2rem, 4vw, 4.5rem);
  padding: clamp(2rem, 4vw, 4rem) var(--ake-space);
  background: var(--pink);
  overflow: visible;
}
.ake-landing .hero-copy { width: 100%; max-width: 640px; margin: 0; }
.ake-landing .hero .brand-intro { margin: 0 0 1.5rem; }
.ake-landing .brand-lettering { justify-content: flex-start; }
.ake-landing .hero .original-lettering {
  width: min(100%, 420px);
  max-width: 420px;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
  mix-blend-mode: normal;
}
.ake-landing .hero .eyebrow { margin: 0 0 .75rem; font-size: 1rem; }
.ake-landing .hero h1 { font-size: clamp(2rem, 3.8vw, 3.5rem); line-height: 1.12; letter-spacing: 0; }
.ake-landing .hero-emphasis { color: var(--olive); }
.ake-landing .hero-note { margin-top: 1.25rem; font-size: 1.125rem; line-height: 1.6; }
.ake-landing .hero-actions { margin-top: 1.5rem; gap: .75rem; }
.ake-landing .pill {
  min-height: 44px;
  padding: .75rem 1.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  border-color: var(--olive);
}
.ake-landing :is(.primary, .catalog button.primary, .studio-access) {
  background: var(--olive);
  color: var(--cream);
  border-color: var(--olive);
}
.ake-landing .pill:hover { background: var(--olive); color: var(--cream); }
.ake-landing .primary:hover { background: var(--cream); color: var(--olive); }
.ake-landing .hero-process {
  margin: 2rem 0 0;
  padding: .75rem .75rem 1rem;
  background: var(--cream);
  border-bottom: 5px solid var(--sage);
  transform: rotate(-1deg);
}
.ake-landing .hero-process img {
  width: 100%;
  height: auto;
  max-height: 350px;
  aspect-ratio: 4 / 3;
  object-fit: contain;
}
.ake-landing .hero-process figcaption { margin-top: .625rem; font-size: 1rem; }
.ake-landing .agenda {
  border: 1px solid var(--olive);
  border-radius: 1.25rem;
  box-shadow: 6px 6px 0 var(--cocoa);
  padding: clamp(1.25rem, 2.5vw, 2.5rem);
  background: var(--cream);
  scroll-margin-top: 1.5rem;
}
.ake-landing .agenda h2 { font-size: clamp(2rem, 2.7vw, 2.75rem); margin: .5rem 0 .875rem; }
.ake-landing .agenda > p:not(.eyebrow) { font-size: 1rem; margin: .5rem 0; }
.ake-landing .agenda .catalog { margin-top: 1.5rem; padding-top: 0; }
.ake-landing .agenda .offer-card { padding: 1.375rem 0; gap: .625rem 1rem; }
.ake-landing .agenda .catalog h3 { font-size: 1.375rem; margin: 0; }
.ake-landing .agenda :is(.offer-description, .offer-schedule li, .offer-card > .small, details, .eyebrow) {
  font-size: 1rem;
  line-height: 1.6;
}
.ake-landing .agenda .offer-schedule { margin: .5rem 0; }
.ake-landing .agenda .offer-schedule li { margin: .375rem 0; }
.ake-landing .agenda .catalog-price { font-size: 1.25rem; font-weight: 400; }
.ake-landing .agenda .offer-card > .pill { padding: .75rem 1rem; }
.ake-landing .agenda summary { min-height: 44px; padding: .625rem 0; }
.ake-landing .agenda .catalog-refresh { font-size: 1rem; padding: .75rem 1rem; margin: 1rem 0; }
.ake-landing .agenda > a.small { display: inline-block; padding-block: .75rem; text-decoration: underline; text-underline-offset: 5px; }
.ake-landing .pieces-section {
  padding: clamp(3rem, 6vw, 5rem) var(--ake-space);
  background: var(--cream);
  scroll-margin-top: 1.5rem;
}
.ake-landing .section-top { gap: 1.5rem; align-items: center; margin-bottom: 2rem; }
.ake-landing .section-top .eyebrow { margin-bottom: .5rem; }
.ake-landing .section-top > p { max-width: 340px; font-size: 1rem; }
.ake-landing .piece-track { gap: 2rem; padding-bottom: 1.5rem; }
.ake-landing .piece-photo { background: var(--pink); border-radius: 1rem 1rem .25rem .25rem; border-color: var(--line); }
.ake-landing .catalog .piece-card { flex-basis: min(340px, 85%); padding-bottom: 1.5rem; }
.ake-landing .catalog .piece-card h3 { margin-top: 1rem; }
.ake-landing .catalog p { font-size: 1rem; line-height: 1.6; }
.ake-landing .catalog .eyebrow { font-size: 1rem; }
.ake-landing .catalog-price { font-weight: 400; }
.ake-landing .carousel-controls button { min-width: 44px; padding: .625rem 1rem; }
.ake-landing .pieces-section > .small { padding-top: 1rem; text-decoration: underline; text-underline-offset: 5px; }
.ake-landing .studio-photos { padding: clamp(3rem, 6vw, 5rem) var(--ake-space); background: var(--pink); }
.ake-landing .studio-photos .collage { gap: 2rem; }
.ake-landing .photo { padding: .75rem .75rem 1rem; border-color: var(--line); box-shadow: 0 5px 0 #3D3B2D15; }
.ake-landing .photo figcaption { font-family: 'Questrial', sans-serif; font-size: 1rem; line-height: 1.6; }
.ake-landing .gallery {
  padding: clamp(3rem, 6vw, 5rem) var(--ake-space);
  background: var(--olive);
  color: var(--cream);
  border-top: 0;
}
.ake-landing .gallery-grid { gap: clamp(1.5rem, 4vw, 4rem); }
.ake-landing .gallery-grid .art-card { background: var(--cream); color: var(--olive); padding: .75rem .75rem 1rem; box-shadow: none; }
.ake-landing .gallery-grid .art-card img { background: var(--cream); }
.ake-landing .gallery figcaption { font-size: 1rem; line-height: 1.6; }
.ake-landing .gallery-link { max-width: 100%; min-height: 44px; padding-block: .75rem; line-height: 1.6; }
.ake-landing .gallery a:focus-visible { outline-color: var(--cream); }
.ake-landing .story { background: var(--cream); padding: clamp(3rem, 6vw, 5rem) var(--ake-space); }
.ake-landing .story > img { border-color: var(--pink); border-radius: .25rem; }
.ake-landing .story p { font-size: 1.125rem; line-height: 1.7; max-width: 540px; }
.ake-landing .story blockquote { font-family: 'Bagel Fat One', 'DynaPuff', sans-serif; font-size: clamp(1.5rem, 2.2vw, 2rem); font-weight: 400; }
.ake-landing .story cite { font: 1rem/1.6 'Questrial', sans-serif; margin-top: .75rem; }
.ake-landing .story a { min-height: 44px; padding-block: .75rem; font-size: 1rem; }
.ake-landing .contact { padding: clamp(2rem, 4vw, 4rem) var(--ake-space); background: var(--sage); gap: 2rem; }
.ake-landing .contact > div { background: var(--cream); padding: clamp(1.25rem, 3vw, 2rem); border-radius: 1rem; max-width: 740px; }
.ake-landing .contact p { color: var(--olive); font-size: 1.125rem; line-height: 1.6; }
.ake-landing footer { background: var(--cream); padding: 2rem var(--ake-space); align-items: center; font-size: 1rem; }
.ake-landing footer .wordmark img { width: 240px; height: auto; border-radius: 0; object-fit: contain; }
.ake-landing dialog { background: var(--cream); color: var(--olive); font: 1rem/1.6 'Questrial', sans-serif; }
.ake-landing dialog h2 { font-size: 2rem; }
.ake-landing dialog button { min-height: 44px; }
@media (max-width: 1000px) {
  .ake-landing .hero { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .ake-landing .hero-copy { max-width: 720px; }
  .ake-landing .hero-process { display: none; }
  .ake-landing .hero .original-lettering { max-width: 420px; }
  .ake-landing .contact { flex-wrap: wrap; }
}
@media (max-width: 720px) {
  .ake-landing header { padding-block: .875rem; gap: .5rem; }
  .ake-landing header .wordmark img { width: 240px !important; height: auto !important; }
  .ake-landing header nav { width: 100%; justify-content: flex-start; gap: .25rem 1.125rem; font-size: 1rem; }
  .ake-landing .hero { padding-block: 2rem; gap: 2rem; }
  .ake-landing .hero .brand-intro { margin-bottom: 1.25rem; }
  .ake-landing .hero .original-lettering { max-width: 100%; }
  .ake-landing .hero h1 { font-size: clamp(2rem, 7.5vw, 2.75rem); }
  .ake-landing .hero-note { font-size: 1.0625rem; line-height: 1.6; margin-top: 1rem; }
  .ake-landing .hero-actions { gap: .75rem; margin-top: 1.25rem; }
  .ake-landing .hero-actions .pill { font-size: 1rem; padding: .75rem 1rem; }
  .ake-landing .agenda { padding: 1.25rem; box-shadow: 4px 4px 0 var(--cocoa); }
  .ake-landing .agenda h2 { font-size: 2rem; }
  .ake-landing .section-top { display: block; }
  .ake-landing .section-top > p { margin-top: 1rem; }
  .ake-landing .studio-photos .collage { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
  .ake-landing .studio-photos .photo:last-child { grid-column: 1 / -1; width: 70%; justify-self: center; }
  .ake-landing .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
  .ake-landing .gallery-grid .art-card { width: 90%; max-width: 360px; grid-column: 1 / -1; }
  .ake-landing .story { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .ake-landing .story > img { max-width: 420px; width: 90%; }
  .ake-landing .contact { display: block; }
  .ake-landing .contact .pill { margin-top: 1.5rem; }
  .ake-landing footer { display: flex; flex-wrap: wrap; gap: 1rem 2rem; }
}
@media (max-width: 420px) {
  .ake-landing .agenda .offer-card { grid-template-columns: minmax(0, 1fr); }
  .ake-landing .agenda .offer-card > .pill { justify-self: start; }
}
@media (prefers-reduced-motion: reduce) {
  .ake-landing .hero-process { transform: none; }
}

.ake-landing .agenda .offer-schedule li { text-transform: none; }
.ake-landing .brand-ceramics { width: min(100%, 340px); height: auto; margin-bottom: 1.5rem; }

.ake-landing .brand-lettering picture { display: block; width: min(100%, 420px); }

/* Studio identity: the existing controllers retain ownership of views and states. */
.ake-studio {
  --olive: #3D3B2D;
  --sage: #879D91;
  --pink: #CFADA0;
  --rose: #CFADA0;
  --taupe: #9A9078;
  --cocoa: #A98C70;
  --cream: #E6DCCD;
  --paper: #E6DCCD;
  --ink: #3D3B2D;
  --green: #879D91;
  --muted: #3D3B2D;
  --line: #3D3B2D38;
  background: var(--cream);
  color: var(--olive);
  font: 400 1rem/1.6 'Questrial', sans-serif;
  font-synthesis: none;
}
.ake-studio [hidden] { display: none !important; }
.ake-studio :is(button, input, select, textarea, h2, h3, h4, strong, b, label, small, th, legend) {
  font-family: 'Questrial', sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}
.ake-studio h1 {
  font-family: 'Bagel Fat One', sans-serif;
  font-size: clamp(2rem, 3vw, 2.75rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
  text-wrap: balance;
}
.ake-studio h2 { font-size: 1.5rem; line-height: 1.35; }
.ake-studio h3 { font-size: 1.125rem; line-height: 1.5; }
.ake-studio :is(.studio-welcome, .offer-intro, .kontrol-info, .mini-site) h2 {
  font: 400 1.5rem/1.35 'Questrial', sans-serif;
  letter-spacing: 0;
}
.ake-studio :is(.eyebrow, .nav-label, .settings-nav-label, .private, small, .small, .footnote, .ref, .record-id, .preview-label, .tag, .date-chip, .metric span, .metric small, .balance-list dt, .stripe-details dt, .sidebar-bottom span, .demo-note, .workspace > footer) {
  font-size: .875rem;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: none;
  color: var(--olive);
}
.ake-studio :is(.record-person, .phase-list b, .storage-warning) { font-weight: 400; color: var(--olive); }
.ake-studio :is(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--olive);
  outline-offset: 3px;
}
.ake-studio .sidebar {
  width: 288px;
  padding: 1.5rem;
  background: var(--cream);
  overflow-y: auto;
  gap: 0;
}
.ake-studio .sidebar .identity { width: 100%; max-width: none; }
.ake-studio .sidebar .ake-wordmark { width: 100%; }
.ake-studio .sidebar .ake-wordmark img {
  width: 240px;
  max-width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
  mix-blend-mode: normal;
}
.ake-studio .sidebar .identity small { font: 400 .875rem/1.6 'Questrial', sans-serif; margin-top: .75rem; }
.ake-studio .nav-label { margin: 1.75rem 0 .75rem; }
.ake-studio .sidebar nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: .375rem; overflow: visible; }
.ake-studio :is(nav button, .sidebar-bottom button) {
  min-height: 44px;
  padding: .625rem .875rem;
  border: 1px solid transparent;
  border-radius: .5rem;
  font-size: 1rem;
  line-height: 1.5;
  white-space: normal;
  color: var(--olive);
  translate: none;
}
.ake-studio nav button:hover { background: var(--pink); translate: none; }
.ake-studio :is(nav button, .sidebar-bottom button)[aria-current='page'] {
  background: var(--olive);
  color: var(--cream);
  border-color: var(--olive);
  box-shadow: none;
}
.ake-studio :is(nav button, .sidebar-bottom button)[aria-current='page']:focus-visible { outline-offset: 4px; }
.ake-studio #payment-settings-nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: .375rem; }
.ake-studio .settings-nav-label { margin: 1rem .875rem .25rem; }
.ake-studio .sidebar-bottom { display: grid; gap: .625rem; padding-top: 1.5rem; margin-top: auto; }
.ake-studio .sidebar-bottom a { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem .875rem; white-space: normal; }
.ake-studio .workspace { margin-left: 288px; min-width: 0; background: var(--cream); }
.ake-studio .workspace > header {
  background: var(--cream);
  padding: 1.125rem clamp(1.25rem, 3vw, 2.5rem);
  font-size: 1rem;
  align-items: center;
  flex-wrap: wrap;
}
.ake-studio .private { background: var(--cream); border: 1px solid var(--olive); padding: .25rem .75rem; white-space: normal; }
.ake-studio .demo-note { background: var(--pink); padding: .875rem clamp(1.25rem, 3vw, 2.5rem); }
.ake-studio main { max-width: 1280px; padding: 2rem clamp(1.25rem, 3vw, 2.5rem); }
.ake-studio .page-heading { margin-bottom: 1.5rem; padding-bottom: 1.5rem; align-items: start; flex-wrap: wrap; }
.ake-studio .page-heading h1 { font-size: clamp(2rem, 3vw, 2.75rem); }
.ake-studio .page-heading p:last-child { font-size: 1rem; max-width: 65ch; }
.ake-studio :is(.card, .metric, .table-wrap) { background: var(--cream); border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; }
.ake-studio .card { padding: 1.5rem; }
.ake-studio .metric { padding: 1.25rem; border-top: 4px solid var(--sage); }
.ake-studio .metric strong { font-size: 2rem; font-variant-numeric: tabular-nums; color: var(--olive); }
.ake-studio :is(.metrics, .balance-list, .stripe-details, .piece-grid, .scope-grid, .phase-list) { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
.ake-studio :is(.records, .balance-list > div, .stripe-details > div, .card-heading > *, .toolbar > *, .grid > *, .site-editor > *, .session-row > *) { min-width: 0; }
.ake-studio :is(.balance-list dd, .stripe-details dd, .metric strong) { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.ake-studio :is(.grid, .site-editor) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ake-studio :is(.card-heading, .toolbar, .actions, .dialog-actions) { flex-wrap: wrap; }
.ake-studio :is(.button, .secondary, .text-button, .pill, .mini-site a, footer button) {
  min-height: 44px;
  padding: .625rem 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  border: 1px solid var(--olive);
  border-radius: .5rem;
  translate: none;
  box-shadow: none;
}
.ake-studio :is(.button, .mini-site a) { background: var(--olive); color: var(--cream); }
.ake-studio :is(.secondary, .text-button, .pill, footer button) { background: var(--cream); color: var(--olive); }
.ake-studio :is(.button, .secondary, .pill):hover { background: var(--pink); color: var(--olive); translate: none; box-shadow: none; }
.ake-studio button:disabled { cursor: not-allowed; opacity: .65; translate: none; }
.ake-studio button[aria-busy='true'] { cursor: progress; }
.ake-studio :is(input, select, textarea) {
  max-width: 100%;
  min-width: 0;
  font-size: 1rem;
  color: var(--olive);
  background: var(--cream);
  border: 1px solid var(--olive);
  border-radius: .5rem;
  padding: .625rem .75rem;
}
.ake-studio :is(input:not([type='checkbox']):not([type='radio']), select) { min-height: 44px; }
.ake-studio :is(input[type='checkbox'], input[type='radio']) { accent-color: var(--olive); }
.ake-studio :is(.panel-form label, .site-editor label, #fields label, .catalog-editor label, .enrollment-filters label) { font-size: 1rem; font-weight: 400; }
.ake-studio textarea { resize: vertical; min-height: 100px; }
.ake-studio :is(.tag, .tag.pending, .date-chip, .notice, .inline-notice, .enrollment-filters) { color: var(--olive); background: var(--cream); border: 1px solid var(--olive); }
.ake-studio .tag { white-space: normal; padding: .25rem .625rem; }
.ake-studio .notice { border-left: 4px solid var(--sage); font-size: 1rem; }
.ake-studio :is(.brand-strip, .mini-site) { background: var(--pink); color: var(--olive); border-radius: .75rem; }
.ake-studio :is(.scope-grid p, .phase-list p, .piece p, .scope-grid ul, .brand-strip p) { font-size: 1rem; }
.ake-studio .studio-welcome { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
.ake-studio .studio-welcome > img { display: none; }
.ake-studio .empty { padding: 2rem 1.25rem; border: 1px dashed var(--olive); border-radius: .75rem; color: var(--olive); }
.ake-studio .table-wrap { max-width: 100%; overflow-x: auto; }
.ake-studio table { font-size: 1rem; }
.ake-studio th { background: var(--cream); font-size: .875rem; color: var(--olive); }
.ake-studio :is(th, td) { padding: 1rem; }
.ake-studio td small { font-size: .875rem; }
.ake-studio .operation-status { margin: 0 clamp(1.25rem, 3vw, 2.5rem) 1.25rem; }
.ake-studio .workspace > footer { padding: 1.25rem clamp(1.25rem, 3vw, 2.5rem); }
.ake-studio dialog {
  width: min(36rem, calc(100vw - 2rem));
  max-width: calc(100vw - 2rem);
  max-height: calc(100dvh - 2rem);
  overflow-y: auto;
  padding: 1.5rem;
  background: var(--cream);
  color: var(--olive);
  border: 1px solid var(--olive);
  border-top: 5px solid var(--pink);
  border-radius: .75rem;
  font: 400 1rem/1.6 'Questrial', sans-serif;
}
.ake-studio dialog::backdrop { background: #3D3B2D80; }
.ake-studio dialog:has(.catalog-editor) { width: min(46rem, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); border-color: var(--olive); border-radius: .75rem; }
.ake-studio .dialog-heading { align-items: start; gap: 1rem; }
.ake-studio .dialog-heading button { min-width: 44px; min-height: 44px; padding: .25rem; margin: 0; border: 1px solid var(--olive); border-radius: .5rem; flex-shrink: 0; }
.ake-studio dialog .muted { font-size: 1rem; }
.ake-studio .catalog-editor fieldset { border-color: var(--olive); padding: 1rem; }
.ake-studio :is([role='alert'], #form-error, .catalog-error, [data-errors]) { color: #713b30; overflow-wrap: anywhere; }
.ake-studio [aria-invalid='true'] { border: 2px solid #713b30; }
.ake-studio [data-landing-continuation] { padding: 1rem 1.5rem; margin: 0 0 0 288px; background: var(--pink); }
@media (max-width: 1100px) {
  .ake-studio :is(.grid, .site-editor) { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 800px) {
  .ake-studio .sidebar { position: static; width: 100%; display: block; padding: 1.25rem; border-right: 0; border-bottom: 1px solid var(--line); overflow: visible; }
  .ake-studio .sidebar .identity { max-width: 100%; }
  .ake-studio .sidebar .ake-wordmark img { width: 240px; height: auto; }
  .ake-studio .sidebar .identity small { margin-top: .5rem; }
  .ake-studio .nav-label { display: none; }
  .ake-studio .sidebar nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; margin-top: 1rem; padding: 0; }
  .ake-studio .sidebar nav button { font-size: 1rem; padding: .625rem .75rem; border-color: var(--line); }
  .ake-studio #payment-settings-nav { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ake-studio .settings-nav-label { grid-column: 1 / -1; margin: .5rem 0 0; }
  .ake-studio .sidebar-bottom { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: .75rem; padding-top: .75rem; }
  .ake-studio .sidebar-bottom :is(button, a) { font-size: .875rem; }
  .ake-studio .sidebar-bottom span { display: none; }
  .ake-studio .workspace { margin-left: 0; }
  .ake-studio [data-landing-continuation] { margin-left: 0; }
  .ake-studio main { padding: 1.5rem 1.25rem; }
  .ake-studio .page-heading h1 { font-size: 2rem; }
  .ake-studio .card { padding: 1.25rem; }
  .ake-studio :is(.balance-list, .stripe-details, .scope-grid, .piece-grid, .phase-list) { grid-template-columns: minmax(0, 1fr); }
  .ake-studio .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ake-studio .session-row { grid-template-columns: 48px minmax(0, 1fr); }
  .ake-studio .session-row .tag { grid-column: 2; font-size: .875rem; justify-self: start; }
  .ake-studio .dialog-actions > button { flex: 1 1 140px; }
  .ake-studio dialog { padding: 1.25rem; }
}
@media (max-width: 420px) {
  .ake-studio .metrics { grid-template-columns: minmax(0, 1fr); }
  .ake-studio .card-heading { align-items: start; }
}

.ake-studio:not([data-ake-role]) .sidebar nav button:not([data-view="inicio"]),
.ake-studio:not([data-ake-role]) .sidebar-bottom button { display: none; }
.ake-studio .actions { display: flex; gap: .75rem; }

.ake-studio .reservation-help { margin-bottom: 1.25rem; }
.ake-studio .reservation-help summary { min-height: 44px; cursor: pointer; padding-block: .625rem; }

/* Mobile first: native disclosures keep navigation and filters within reach. */
:is(.ake-landing, .ake-studio) .responsive-navigation > summary,
.ake-studio .record-filter-disclosure > summary {
  min-height: 44px;
  padding: .625rem .75rem;
  border: 1px solid var(--olive);
  border-radius: .5rem;
  color: var(--olive);
  background: var(--cream);
  font: inherit;
  line-height: 1.5;
  cursor: pointer;
  overflow-wrap: anywhere;
}
:is(.ake-landing, .ake-studio) summary:focus-visible {
  outline: 3px solid var(--olive);
  outline-offset: 3px;
}
.ake-landing header {
  display: block;
  position: relative;
  padding: .75rem var(--ake-space);
}
.ake-landing header .wordmark { display: inline-flex; align-items: center; max-width: 128px; }
.ake-landing header .wordmark img { width: 128px !important; max-height: 44px; }
.ake-landing header .responsive-navigation > summary {
  position: absolute;
  top: .75rem;
  right: var(--ake-space);
  max-width: calc(100% - 128px - 2 * var(--ake-space) - .75rem);
}
.ake-landing header .responsive-navigation[open] nav {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: .5rem 1.25rem;
  margin-top: .75rem;
  padding-top: .5rem;
  border-top: 1px solid var(--line);
}
.ake-landing .hero { grid-template-columns: minmax(0, 1fr); padding-block: 1.5rem; gap: 1.5rem; }
.ake-landing .hero-copy { max-width: none; }
.ake-landing .hero .brand-intro, .ake-landing .hero-process { display: none; }
.ake-landing .hero h1 { font-size: clamp(2rem, 5vw, 2.75rem); }
.ake-landing .hero-note { font-size: 1rem; margin-top: .875rem; }
.ake-landing .hero-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: .625rem;
  margin-top: 1rem;
}
.ake-landing .hero-actions .pill { display: inline-flex; justify-content: center; align-items: center; padding: .625rem .75rem; white-space: normal; }
.ake-landing .agenda { min-width: 0; padding: 1.25rem; }
.ake-landing .paths, .ake-landing .story { grid-template-columns: minmax(0, 1fr); }
.ake-landing :is(.contact, .section-top) { flex-wrap: wrap; }
.ake-landing :is(button, input, select, textarea), .ake-studio :is(input, select, textarea) { font-size: 16px; }
.ake-landing :is(input:not([type='checkbox']):not([type='radio']), select, button) { min-height: 44px; }
:is(.ake-landing, .ake-studio) :is(.pill, .button, .secondary, .text-button) { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }

.ake-studio .sidebar {
  position: relative;
  inset: auto;
  width: 100%;
  display: block;
  padding: .75rem 1.25rem;
  border-right: 0;
  border-bottom: 1px solid var(--line);
  overflow: visible;
}
.ake-studio .sidebar .identity { width: 128px; min-height: 44px; }
.ake-studio .sidebar .ake-wordmark { display: block; width: 128px; }
.ake-studio .sidebar .ake-wordmark picture { display: block; }
.ake-studio .sidebar .ake-wordmark img { width: 128px; max-height: 44px; height: auto; }
.ake-studio .sidebar .responsive-navigation > summary {
  position: absolute;
  right: 1.25rem;
  top: .75rem;
  max-width: calc(100% - 128px - 3.25rem);
  text-align: center;
}
.ake-studio .sidebar .nav-label { display: none; }
.ake-studio .sidebar .responsive-navigation[open] > nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: .375rem;
  margin-top: .875rem;
  padding-top: .75rem;
  border-top: 1px solid var(--line);
}
.ake-studio .sidebar nav button { font-size: 1rem; padding: .625rem .875rem; }
.ake-studio #payment-settings-nav { grid-template-columns: minmax(0, 1fr); grid-column: auto; }
.ake-studio .sidebar-bottom { display: grid; gap: .5rem; margin-top: .75rem; padding-top: .75rem; }
.ake-studio .sidebar-bottom :is(button, a) { font-size: 1rem; }
.ake-studio .sidebar-bottom span { display: none; }
.ake-studio .workspace, .ake-studio [data-landing-continuation] { margin-left: 0; }
.ake-studio .workspace > header { padding: .75rem 1.25rem; }
.ake-studio .demo-note { padding: .75rem 1.25rem; }
.ake-studio main { padding: 1.25rem; }
.ake-studio .page-heading { gap: .75rem; padding-bottom: 1rem; margin-bottom: 1rem; }
.ake-studio .page-heading h1 { font-size: 2rem; }
.ake-studio .card { padding: 1.25rem; }
.ake-studio :is(.grid, .site-editor, .balance-list, .stripe-details, .scope-grid, .piece-grid, .phase-list) { grid-template-columns: minmax(0, 1fr); }
.ake-studio .metrics { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
.ake-studio .session-row { grid-template-columns: 48px minmax(0, 1fr); }
.ake-studio .session-row .tag { grid-column: 2; justify-self: start; }
.ake-studio .record-filter-disclosure { margin: 0 0 1rem; }
.ake-studio .record-filter-disclosure > summary { width: fit-content; max-width: 100%; }
.ake-studio .record-filter-disclosure[open] > form { margin-top: .75rem; }
.ake-studio .record-filter-disclosure > form { display: grid; grid-template-columns: minmax(0, 1fr); gap: .75rem; }
.ake-studio .record-filter-disclosure :is(input, select, label) { width: 100%; min-width: 0; }
.ake-studio :is(.record-card, .record-person, .record-summary, .record-details, .card-heading, .notice, .inline-notice) { overflow-wrap: anywhere; }
.ake-studio :is(.card-heading, .toolbar, .actions, .dialog-actions) { gap: .75rem; }
:is(.ake-landing, .ake-studio) dialog {
  max-height: calc(100dvh - 2rem);
  max-width: calc(100vw - 2rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 1.25rem;
  scroll-padding-block: 1rem;
}
.ake-studio dialog .dialog-actions {
  position: sticky;
  bottom: -1.25rem;
  z-index: 1;
  background: var(--cream);
  padding: .875rem 0 max(.875rem, env(safe-area-inset-bottom));
  margin-top: 1rem;
  border-top: 1px solid var(--line);
}
.ake-studio .dialog-actions > button { flex: 1 1 120px; }

@media (min-width: 1001px) {
  .ake-landing header { display: flex; padding: 1rem var(--ake-space); }
  .ake-landing header .wordmark { max-width: none; }
  .ake-landing header .wordmark img { width: 240px !important; max-height: 66px; }
  :is(.ake-landing, .ake-studio) .responsive-navigation[open] > summary { display: none; }
  .ake-landing header .responsive-navigation > summary { position: static; max-width: none; }
  .ake-landing header .responsive-navigation[open] nav { width: auto; margin: 0; padding: 0; border: 0; gap: .5rem 1.5rem; }
  .ake-landing .hero { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(2rem, 4vw, 4.5rem); padding-block: clamp(2rem, 4vw, 4rem); }
  .ake-landing .hero-copy { max-width: 640px; }
  .ake-landing .hero .brand-intro, .ake-landing .hero-process { display: block; }
  .ake-landing .hero h1 { font-size: clamp(2rem, 3.8vw, 3.5rem); }
  .ake-landing .hero-note { font-size: 1.125rem; margin-top: 1.25rem; }
  .ake-landing .hero-actions { display: flex; gap: .75rem; margin-top: 1.5rem; }
  .ake-landing .hero-actions .pill { padding: .75rem 1.25rem; }
  .ake-landing .agenda { padding: clamp(1.25rem, 2.5vw, 2.5rem); }
  .ake-landing .paths, .ake-landing .story { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .ake-studio .sidebar { position: fixed; inset: 0 auto 0 0; width: 288px; display: flex; flex-direction: column; padding: 1.5rem; border-right: 1px solid var(--line); border-bottom: 0; overflow-y: auto; }
  .ake-studio .sidebar .identity, .ake-studio .sidebar .ake-wordmark { width: 100%; }
  .ake-studio .sidebar .ake-wordmark img { width: 240px; max-height: none; }
  .ake-studio .sidebar .responsive-navigation { flex: 1; }
  .ake-studio .sidebar .responsive-navigation > summary { position: static; max-width: none; margin-top: 1.25rem; }
  .ake-studio .sidebar .nav-label { display: block; }
  .ake-studio .sidebar .responsive-navigation[open] > nav { margin-top: 0; padding-top: 0; border-top: 0; }
  .ake-studio .sidebar-bottom { margin-top: 1.5rem; padding-top: 1.5rem; gap: .625rem; }
  .ake-studio .sidebar-bottom span { display: block; }
  .ake-studio .workspace, .ake-studio [data-landing-continuation] { margin-left: 288px; }
  .ake-studio .workspace > header { padding: 1.125rem clamp(1.25rem, 3vw, 2.5rem); }
  .ake-studio .demo-note { padding: .875rem clamp(1.25rem, 3vw, 2.5rem); }
  .ake-studio main { padding: 2rem clamp(1.25rem, 3vw, 2.5rem); }
  .ake-studio .page-heading { padding-bottom: 1.5rem; margin-bottom: 1.5rem; }
  .ake-studio .page-heading h1 { font-size: clamp(2rem, 3vw, 2.75rem); }
  .ake-studio .card { padding: 1.5rem; }
  .ake-studio :is(.balance-list, .stripe-details, .scope-grid, .piece-grid, .phase-list) { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
  .ake-studio .session-row { grid-template-columns: 48px minmax(0, 1fr) auto; }
  .ake-studio .session-row .tag { grid-column: auto; }
  .ake-studio .record-filter-disclosure > form { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
  .ake-studio dialog { padding: 1.5rem; }
  .ake-studio dialog .dialog-actions { bottom: -1.5rem; }
}
@media (min-width: 1101px) {
  .ake-studio :is(.grid, .site-editor) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}

/* Secondary navigation stays in the normal flow at every viewport. */
.ake-studio .studio-navigation-help {
  min-width: 0;
  margin-top: .75rem;
  padding-top: .5rem;
  border-top: 1px solid var(--line);
}
.ake-studio .studio-navigation-help > summary { padding-inline: .875rem; }
.ake-studio .studio-navigation-help :is([data-studio-auxiliary], #payment-settings-nav) {
  margin-top: .5rem;
}
.ake-studio :is([data-studio-primary], [data-studio-auxiliary]) { min-width: 0; }
.ake-studio :is([data-studio-primary], [data-studio-auxiliary]) button { width: 100%; text-align: left; }
.ake-studio main :is(fieldset, section, details), .access-page :is(fieldset, details) { min-width: 0; }

/* Session-aware public navigation retains the AKE palette and native controls. */
.ake-landing header nav [hidden]{display:none}
.ake-landing header #landing-customer{position:relative}
.ake-landing header summary{cursor:pointer}
.ake-landing header summary:focus-visible{outline:3px solid var(--brown);outline-offset:4px}
.ake-landing .landing-account-menu{position:absolute;right:0;top:100%;z-index:3;min-width:180px;padding:.5rem;background:var(--cream);border:1px solid var(--olive);border-radius:6px;box-shadow:0 5px 12px #6a423312}
.ake-landing .landing-account-menu a{display:block;padding:.75rem .5rem}
.ake-landing #landing-logout .pill,.ake-landing #landing-auth-retry{padding:.625rem .75rem;font-size:inherit;cursor:pointer;background:var(--cream);color:var(--olive)}
.ake-landing #landing-auth-status:empty{display:none}
@media(max-width:720px){.ake-landing .landing-account-menu{left:0;right:auto}}

/* Short phone screens keep the task heading in view without shrinking controls. */
@media (max-width: 400px) and (max-height: 600px) {
  .ake-studio .workspace > header { padding-block: .125rem; row-gap: .25rem; }
  .ake-studio .demo-note { padding-block: 0; }
  .ake-studio main { padding-top: .75rem; }
  .ake-studio .page-heading { padding-bottom: .25rem; margin-bottom: .25rem; }
}

/* Keep loading and verified content in a stable layout; no content is hidden. */
.ake-landing #offers-list { min-block-size: 20rem; }
.ake-landing #pieces-list { min-block-size: 34rem; }
.ake-studio .workspace > header { min-block-size: 6rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .75rem; }
.ake-studio .workspace > header > span:first-child { display: block; min-block-size: 2lh; }
.ake-studio #access-status { min-inline-size: 9rem; min-block-size: 2.25rem; justify-content: center; white-space: normal; }
.ake-studio #session-note { min-block-size: 5rem; }
.ake-studio .page-heading h1 { min-block-size: 2lh; }
.ake-studio #subtitle { min-block-size: 2lh; }
.ake-studio #view { min-block-size: 24rem; }
.ake-studio #recovery-status { display: block; min-block-size: 3.5rem; }
@media (min-width: 1001px) {
  .ake-studio .workspace > header { min-block-size: 4.5rem; }
  .ake-studio #session-note { min-block-size: 3.5rem; }
  .ake-studio .page-heading h1 { min-block-size: 1lh; }
}

/* Native picture fallback keeps the original image layout. */
.photo-source { display: contents; }

/* Compact stable reservations on short phones match one-line task titles. */
@media (max-width: 400px) and (max-height: 600px) {
  .ake-studio .workspace > header { min-block-size: 4rem; }
  .ake-studio #session-note { min-block-size: 3.5rem; }
  .ake-studio .page-heading h1 { min-block-size: 1lh; }
}

}
