/* The Classic landing (rewrite-public-pages task 4.4): the Tailwind
   utilities Laravel's landing-templates/classic view and the storefront's
   cards and stars use, as its compiled app.css holds them (theme values,
   utilities in their order, the registered properties; generated by
   backend/scripts/page-utilities.py from the four templates, so the last
   sheet holds every utility on the page), its face as app.css declares it,
   and classes for the view's inline style attributes (design D8). The
   academy's colour is the page's own style block. */
@font-face{font-family:"ReadexPro";src:url(readex-pro.3560131c.ttf);font-style:normal}
/* Theme */
@layer theme{:root,:host{--color-amber-400:oklch(82.8% .189 84.429);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-gray-200:oklch(92.8% .006 264.531);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-tight:1.25;--leading-relaxed:1.625;--radius-lg:.5rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-lg:16px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-readex-pro:"ReadexPro";--color-primary:#2f3788}}
/* Utilities */
@layer utilities{
.absolute{position:absolute}
.fixed{position:fixed}
.relative{position:relative}
.inset-0{inset:calc(var(--spacing) * 0)}
.inset-y-0{inset-block:calc(var(--spacing) * 0)}
.start-2{inset-inline-start:calc(var(--spacing) * 2)}
.end-2{inset-inline-end:calc(var(--spacing) * 2)}
.top-0{top:calc(var(--spacing) * 0)}
.top-1\/2{top:50%}
.top-2{top:calc(var(--spacing) * 2)}
.right-4{right:calc(var(--spacing) * 4)}
.left-0{left:calc(var(--spacing) * 0)}
.z-10{z-index:10}
.my-6{margin-block:calc(var(--spacing) * 6)}
.mt-0\.5{margin-top:calc(var(--spacing) * .5)}
.mt-1{margin-top:calc(var(--spacing) * 1)}
.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}
.mt-2{margin-top:calc(var(--spacing) * 2)}
.mt-3{margin-top:calc(var(--spacing) * 3)}
.mt-4{margin-top:calc(var(--spacing) * 4)}
.mt-6{margin-top:calc(var(--spacing) * 6)}
.mt-8{margin-top:calc(var(--spacing) * 8)}
.mt-16{margin-top:calc(var(--spacing) * 16)}
.mt-20{margin-top:calc(var(--spacing) * 20)}
.mt-36{margin-top:calc(var(--spacing) * 36)}
.mb-1{margin-bottom:calc(var(--spacing) * 1)}
.block{display:block}
.flex{display:flex}
.grid{display:grid}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.aspect-video{aspect-ratio:var(--aspect-video)}
.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}
.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}
.h-4{height:calc(var(--spacing) * 4)}
.h-12{height:calc(var(--spacing) * 12)}
.h-28{height:calc(var(--spacing) * 28)}
.h-\[calc\(100\%-16px\)\]{height:calc(100% - 16px)}
.h-full{height:100%}
.h-px{height:1px}
.min-h-\[75dvh\]{min-height:75dvh}
.min-h-dvh{min-height:100dvh}
.w-\[calc\(100\%\+24px\)\]{width:calc(100% + 24px)}
.w-auto{width:auto}
.w-fit{width:fit-content}
.w-full{width:100%}
.max-w-3xl{max-width:var(--container-3xl)}
.max-w-\[256px\]{max-width:256px}
.max-w-prose{max-width:65ch}
.min-w-\[128px\]{min-width:128px}
.flex-1{flex:1}
.shrink-0{flex-shrink:0}
.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}
.cursor-pointer{cursor:pointer}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-\[0px\]{grid-template-columns:0}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.justify-end{justify-content:flex-end}
.gap-0{gap:calc(var(--spacing) * 0)}
.gap-1{gap:calc(var(--spacing) * 1)}
.gap-1\.5{gap:calc(var(--spacing) * 1.5)}
.gap-2{gap:calc(var(--spacing) * 2)}
.gap-4{gap:calc(var(--spacing) * 4)}
.gap-6{gap:calc(var(--spacing) * 6)}
.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.overflow-hidden{overflow:hidden}
.rounded-full{border-radius:3.40282e38px}
.rounded-lg{border-radius:var(--radius-lg)}
.border{border-style:var(--tw-border-style);border-width:1px}
.border-2{border-style:var(--tw-border-style);border-width:2px}
.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}
.border-neutral-200{border-color:var(--color-neutral-200)}
.border-neutral-400{border-color:var(--color-neutral-400)}
.border-primary\/30{border-color:#2f37884d}
@supports (color:color-mix(in lab,red,red)){
  .border-primary\/30{border-color:color-mix(in oklab,var(--color-primary) 30%,transparent)}
}
.border-primary\/40{border-color:#2f378866}
@supports (color:color-mix(in lab,red,red)){
  .border-primary\/40{border-color:color-mix(in oklab,var(--color-primary) 40%,transparent)}
}
.border-white{border-color:var(--color-white)}
.bg-emerald-500{background-color:var(--color-emerald-500)}
.bg-neutral-100{background-color:var(--color-neutral-100)}
.bg-primary{background-color:var(--color-primary)}
.bg-white{background-color:var(--color-white)}
.bg-white\/40{background-color:#fff6}
@supports (color:color-mix(in lab,red,red)){
  .bg-white\/40{background-color:color-mix(in oklab,var(--color-white) 40%,transparent)}
}
.object-contain{object-fit:contain}
.object-cover{object-fit:cover}
.object-center{object-position:center}
.p-4{padding:calc(var(--spacing) * 4)}
.p-6{padding:calc(var(--spacing) * 6)}
.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}
.px-4{padding-inline:calc(var(--spacing) * 4)}
.px-6{padding-inline:calc(var(--spacing) * 6)}
.py-1{padding-block:calc(var(--spacing) * 1)}
.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}
.py-2{padding-block:calc(var(--spacing) * 2)}
.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}
.py-10{padding-block:calc(var(--spacing) * 10)}
.ps-5{padding-inline-start:calc(var(--spacing) * 5)}
.pb-24{padding-bottom:calc(var(--spacing) * 24)}
.text-center{text-align:center}
.text-start{text-align:start}
.font-readex-pro{font-family:var(--font-readex-pro)}
.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}
.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}
.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}
.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}
.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}
.text-\[10px\]{font-size:10px}
.leading-none{--tw-leading:1;line-height:1}
.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}
.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}
.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}
.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}
.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}
.whitespace-nowrap{white-space:nowrap}
.whitespace-pre-line{white-space:pre-line}
.text-\[\#242424\]{color:#242424}
.text-amber-400{color:var(--color-amber-400)}
.text-black{color:var(--color-black)}
.text-emerald-600{color:var(--color-emerald-600)}
.text-inherit{color:inherit}
.text-neutral-300{color:var(--color-neutral-300)}
.text-neutral-400{color:var(--color-neutral-400)}
.text-neutral-500{color:var(--color-neutral-500)}
.text-neutral-700{color:var(--color-neutral-700)}
.text-primary{color:var(--color-primary)}
.text-white{color:var(--color-white)}
.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}
.line-through{text-decoration-line:line-through}
.no-underline{text-decoration-line:none}
.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}
.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}
.shadow-primary{--tw-shadow-color:#2f3788}
@supports (color:color-mix(in lab,red,red)){
  .shadow-primary{--tw-shadow-color:color-mix(in oklab, var(--color-primary) var(--tw-shadow-alpha), transparent)}
}
.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}
.transition-\[grid-template-columns\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.duration-300{--tw-duration:.3s;transition-duration:.3s}
.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}
@media (hover:hover){
  .group-hover\:grid-cols-\[16px\]:is(:where(.group):hover *){grid-template-columns:16px}
  .group-hover\:gap-2:is(:where(.group):hover *){gap:calc(var(--spacing) * 2)}
}
@media (hover:hover){
  .hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}
  .hover\:bg-primary\/5:hover{background-color:#2f37880d}
  @supports (color:color-mix(in lab,red,red)){
    .hover\:bg-primary\/5:hover{background-color:color-mix(in oklab,var(--color-primary) 5%,transparent)}
  }
  .hover\:bg-white:hover{background-color:var(--color-white)}
  .hover\:text-\[\#242424\]:hover{color:#242424}
  .hover\:underline:hover{text-decoration-line:underline}
}
@media (min-width:40rem){
  .sm\:top-4{top:calc(var(--spacing) * 4)}
  .sm\:mt-48{margin-top:calc(var(--spacing) * 48)}
  .sm\:h-16{height:calc(var(--spacing) * 16)}
  .sm\:h-\[calc\(100\%-24px\)\]{height:calc(100% - 24px)}
  .sm\:max-w-\[calc\(768px\+32px\)\]{max-width:800px}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:justify-center{justify-content:center}
  .sm\:rounded-lg{border-radius:var(--radius-lg)}
  .sm\:px-6{padding-inline:calc(var(--spacing) * 6)}
  .sm\:py-3{padding-block:calc(var(--spacing) * 3)}
  .sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}
  .sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}
  .sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}
}
@media (min-width:48rem){
  .md\:hidden{display:none}
  .md\:h-auto{height:auto}
  .md\:w-48{width:calc(var(--spacing) * 48)}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:items-end{align-items:flex-end}
  .md\:items-start{align-items:flex-start}
  .md\:gap-16{gap:calc(var(--spacing) * 16)}
  .md\:text-start{text-align:start}
}
@media (min-width:64rem){
  .lg\:px-10{padding-inline:calc(var(--spacing) * 10)}
}
@media (min-width:80rem){
  .xl\:px-16{padding-inline:calc(var(--spacing) * 16)}
}
}
/* Registered properties */
@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}
@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}
@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
@property --tw-leading{syntax:"*";inherits:false}
@property --tw-font-weight{syntax:"*";inherits:false}
@property --tw-ordinal{syntax:"*";inherits:false}
@property --tw-slashed-zero{syntax:"*";inherits:false}
@property --tw-numeric-figure{syntax:"*";inherits:false}
@property --tw-numeric-spacing{syntax:"*";inherits:false}
@property --tw-numeric-fraction{syntax:"*";inherits:false}
@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-shadow-color{syntax:"*";inherits:false}
@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}
@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-backdrop-blur{syntax:"*";inherits:false}
@property --tw-backdrop-brightness{syntax:"*";inherits:false}
@property --tw-backdrop-contrast{syntax:"*";inherits:false}
@property --tw-backdrop-grayscale{syntax:"*";inherits:false}
@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}
@property --tw-backdrop-invert{syntax:"*";inherits:false}
@property --tw-backdrop-opacity{syntax:"*";inherits:false}
@property --tw-backdrop-saturate{syntax:"*";inherits:false}
@property --tw-backdrop-sepia{syntax:"*";inherits:false}
@property --tw-duration{syntax:"*";inherits:false}
@property --tw-ease{syntax:"*";inherits:false}
/* For browsers without @property, as Tailwind writes it. */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}

/* What were inline style attributes in Laravel's view. The background's
   address is absolute, so it resolves on /landing/{slug} too (intended
   difference 10). */
#landing_page{background-image:url(/images/pattern.webp)}
.classic-hero{background-image:linear-gradient(130deg,#79c698 0%,#35a7df 22%,#647fe8 85%,#8e81f2 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 90%)}
.classic-footer{box-shadow:0 -4px 6px -1px rgb(47 55 136 / .8),0 -2px 4px -2px rgb(47 55 136 / .8)}
