@import"https://fonts.googleapis.com/css2?family=Courier+Prime:ital,wght@0,400;0,700;1,400;1,700&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap";:root{--font-heading: "Rubik", system-ui, -apple-system, sans-serif;--font-body: "Courier Prime", system-ui, -apple-system, sans-serif;--primary-colour: rgba(25, 100, 15);--primary-50pct-colour: rgba(25, 100, 15, .5);--primary-10pct-colour: rgba(23, 100, 15, .1);--primary-light-colour: rgb(125, 185, 120);--secondary-colour: rgb(40, 10, 45);--secondary-50pct-colour: rgba(40, 10, 45, .5);--secondary-10pct-colour: rgba(40, 10, 45, .1);--secondary-light-colour: rgb(70, 20, 80);--accent-colour: rgb(240, 150, 10);--accent-dark-colour: rgb(195, 125, 20);--background-colour: rgb(255, 250, 240);--disabled-colour: rgb(255, 255, 255, .5);--xsmall-gap: .25rem;--small-gap: .5rem;--medium-gap: .75rem;--large-gap: 1rem;--xlarge-gap: 1.5rem;--xxlarge-gap: 2rem;--xxxlarge-gap: 2.5rem;--header-height: clamp(72px, 8dvh, 102px);--footer-height: clamo(144px, 16dvh, 204px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:100%;line-height:1.5;background-color:var(--background-colour)}h1,h2,h3{font-family:var(--font-heading);font-weight:800}h4,h5,h6{font-family:var(--font-body);font-weight:400}body{font-family:var(--font-body);font-size:1rem;-webkit-font-smoothing:antialiased}@media(min-width:640px){html{font-size:103%}}@media(min-width:1025px){html{font-size:107%}}.navbar{height:100%;background:var(--background-colour);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.navbar__navlinks--left{display:flex;flex-direction:row;justify-content:start;align-items:center;padding:var(--small-gap) var(--medium-gap);gap:var(--small-gap)}.navbar__brand{justify-self:center;text-decoration:none;text-align:center;font-family:var(--font-heading);font-weight:900;font-size:1.5rem;line-height:1;color:var(--primary-colour)}.navbar__brand br{display:block}.navbar__navlinks--right{display:flex;flex-direction:row;justify-content:end;align-items:center;padding:var(--small-gap) var(--medium-gap);gap:var(--small-gap)}.navlink{display:grid;place-items:center;font-family:var(--font-heading);font-weight:800;width:2.75rem;height:2.75rem;text-decoration:none;color:var(--background-colour);background-color:var(--primary-colour);padding:var(--small-gap);border-radius:var(--medium-gap);border:1px solid var(--primary-colour)}.navlink-text{display:none}.navlink-icon{display:block}.navlink:hover{background-color:var(--primary-light-colour);border-color:var(--primary-light-colour)}.navlink:active{color:var(--secondary-colour);background-color:var(--accent-colour);border-color:var(--accent-colour)}@media(min-width:640px){.navbar__brand{font-size:2rem}.navbar__brand br{display:none}.navbar__navlinks--left,.navbar__navlinks--right{padding:var(--medium-gap) var(--large-gap);gap:var(--medium-gap)}}@media(min-width:1025px){.navbar__navlinks--left,.navbar__navlinks--right{padding:var(--medium-gap) var(--xlarge-gap);gap:var(--medium-gap)}.navlink{width:auto;height:auto;padding:var(--small-gap) var(--medium-gap)}.navlink-text{display:inline-block}.navlink-icon{display:none}}.back-button{display:grid;place-items:center;z-index:5;width:2.75rem;height:2.75rem;padding:var(--small-gap);border-radius:var(--medium-gap);font-family:var(--font-heading);font-weight:800;font-size:1rem;color:var(--primary-colour);background-color:var(--background-colour);border:2px solid var(--primary-colour)}.back-button__text{display:none}.back-button__icon{display:block}.back-button:hover{color:var(--background-colour);background-color:var(--primary-colour)}.back-button:active{color:var(--secondary-colour);background-color:var(--accent-colour);border-color:var(--accent-colour)}@media(min-width:1025px){.back-button{width:auto;height:auto;padding:var(--small-gap) var(--medium-gap)}.back-button .back-button__text{display:inline-block}.back-button .back-button__icon{display:none}}.footer{display:grid;place-items:center;font-size:75%;background:var(--background-colour);border-top:1px solid var(--secondary-light-colour)}.footer__container{display:grid;grid-template-columns:7fr 1fr 1fr;width:100%;max-width:1152px;padding:var(--medium-gap);gap:var(--medium-gap)}.footer__container h3{color:var(--primary-50pct-colour);margin-bottom:.5rem}.footer__description{display:flex;flex-direction:column;justify-content:space-between;align-items:start;height:100%;gap:var(--medium-gap)}.footer__navigation,.footer__media{display:flex;flex-direction:column;justify-content:start;align-items:end;height:100%}@media(min-width:640px){.footer__container{padding:var(--large-gap);gap:var(--large-gap)}}@media(min-width:1025px){.footer__container{padding:var(--xlarge-gap);gap:var(--xlarge-gap)}}.main-layout__header{position:fixed;top:0;left:0;right:0;height:var(--header-height);z-index:50}.main-layout__main{min-height:calc(100dvh - var(--header-height))}.landing{text-align:center}.landing section{height:100dvh;min-height:100dvh;max-height:100dvh}.landing__hero{display:grid;grid-template-rows:var(--header-height) 4fr 3fr 2fr 1fr;place-items:center;background-image:url(/assets/hero-img-shifted-down-leVTAVqV.png);background-position:center;background-size:cover;background-repeat:no-repeat}.hero-content{display:grid;place-items:center;width:85dvw}.hero-title{margin:0 0 1rem;line-height:1;font-size:2rem;color:var(--secondary-colour)}.hero-subtitle{line-height:1.25;color:var(--secondary-colour)}.hero-cta{display:grid;place-items:center;width:85dvw}.hero-cta-button{position:relative;display:grid;place-items:center;padding:var(--large-gap) var(--xlarge-gap);border-radius:var(--large-gap);font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--background-colour);background-color:var(--secondary-colour);border:1px solid var(--secondary-colour);text-decoration:none}.hero-cta-button:hover{background-color:var(--secondary-light-colour)}.hero-cta-button:disabled{cursor:default}.hero-cta-button.is-loading .hero-cta-text{visibility:hidden}.hero-cta-spinner{position:absolute;width:1.15rem;height:1.15rem;border:2px solid var(--background-colour);border-top-color:transparent;border-radius:50%;animation:hero-cta-spin .5s linear infinite;opacity:0}.hero-cta-button.is-loading .hero-cta-spinner{opacity:1}.landing__features{position:relative;display:grid;place-items:center;background-color:var(--background-colour);overflow:hidden;isolation:isolate}.landing__features-content{display:grid;justify-items:center;z-index:5;width:85dvw;height:100dvh;gap:5dvh;grid-template-rows:var(--header-height) 3fr 3fr 3fr 1fr;grid-template-columns:1fr}.feature{display:grid;place-items:center;position:relative;z-index:5;padding:var(--large-gap);align-content:center;max-height:20dvh;color:var(--secondary-colour);border:1px solid var(--secondary-colour);border-radius:var(--large-gap);background:var(--background-colour)}.feature__img{display:none}.feature h2{margin:0 0 .75rem;font-size:1.5rem;line-height:1}.feature__coming-soon{display:inline-block;position:absolute;top:-20px;left:-15px;z-index:5;padding:var(--xsmall-gap) var(--small-gap);border-radius:var(--medium-gap);font-weight:600;color:var(--secondary-colour);background-color:var(--accent-colour)}@media(min-width:640px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.25rem}.feature{display:grid;grid-template-columns:5fr 6fr;padding:var(--medium-gap);border-radius:var(--large-gap);line-height:1.4}.feature__content{padding:var(--medium-gap)}.feature__img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:var(--small-gap);overflow:hidden}.feature__coming-soon{padding:var(--small-gap) var(--medium-gap);border-radius:var(--large-gap)}}@media(min-width:1025px){.landing__features-content{grid-template-rows:var(--header-height) 9fr 1fr;grid-template-columns:repeat(3,1fr)}.feature{grid-template-rows:7fr 3fr;grid-template-columns:1fr;max-height:none;height:74.5dvh;gap:var(--large-gap);padding:var(--large-gap);border-radius:var(--xlarge-gap)}.feature__img{max-height:50dvh;border-radius:var(--medium-gap)}.feature-header-blank,.feature-footer-blank{grid-column:1 / -1}}.bg-scroll{position:absolute;inset:-50dvw;z-index:0;pointer-events:none;transform:rotate(-12deg);display:grid;gap:0rem;align-content:center}.bg-scroll__row{color:var(--background-colour);-webkit-text-stroke:1px var(--primary-light-colour);white-space:nowrap;font-family:var(--font-heading);font-weight:900;font-size:clamp(7.5rem,10dvw,10rem);line-height:.9;will-change:transform;animation:marquee-right 240s linear infinite}.bg-scroll__row>span{display:inline-block;padding-right:.8rem}.bg-scroll__row--1,.bg-scroll__row--3,.bg-scroll__row--5,.bg-scroll__row--7,.bg-scroll__row--9{color:var(--primary-light-colour);animation:marquee-left 240s linear infinite}@keyframes marquee-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-right{0%{transform:translate(-50%)}to{transform:translate(0)}}.scroll-down-button{position:absolute;z-index:10;top:91dvh;left:calc(50dvw - 1.5rem);display:grid;place-items:center;width:3rem;height:2.5rem;font-family:var(--font-heading);font-weight:800;font-size:1rem;text-decoration:none;color:var(--background-colour);background-color:var(--secondary-50pct-colour);padding:var(--small-gap);border-radius:var(--medium-gap);transition:background-color .2s ease}.scroll-down-button:hover{transform:translateY(2.5px);background-color:var(--secondary-colour)}.scroll-down-button:active{color:var(--secondary-colour);background-color:var(--accent-colour)}.recipes-page{text-align:center;background-color:var(--background-colour)}.recipes-page__description{display:grid;grid-template-rows:var(--header-height) auto auto;place-items:center;gap:.5rem;margin:0 0 2dvh}.description-title{font-size:1.75rem;color:var(--secondary-colour);line-height:1}.description-subtitle{color:var(--secondary-colour);line-height:1}.recipes-page__results{display:grid;grid-template-columns:1fr;margin:var(--xsmall-gap) 0;gap:var(--medium-gap);padding:var(--medium-gap)}@media(min-width:640px){.recipes-page__results{grid-template-columns:repeat(2,1fr);margin:0;gap:var(--large-gap);padding:var(--large-gap)}}@media(min-width:1025px){.recipes-page__results{grid-template-columns:repeat(3,1fr);margin:-.5rem 0;gap:var(--xlarge-gap);padding:var(--xlarge-gap)}}.recipe-card{position:relative;min-width:0}.recipe-card--unavailable:after{display:grid;place-items:center;position:absolute;inset:0;pointer-events:none;content:"OUT OF SEASON";font-family:var(--font-heading);font-weight:800;font-size:1.5rem;color:var(--secondary-50pct-colour);background:#ffffffbf}.recipe-card__link{position:relative;display:block;padding:var(--large-gap);border-radius:var(--xlarge-gap);border:1px solid var(--secondary-colour);background:var(--background-colour);text-decoration:none;color:inherit}.recipe-card__media{width:100%;aspect-ratio:4/3}.recipe-card__img{width:100%;height:100%;object-fit:cover;overflow:hidden;display:block;border-radius:var(--medium-gap)}.recipe-card__img-fallback{width:100%;height:100%;background:linear-gradient(135deg,#f2f2f2,#e6e6e6)}.recipe-card__title{position:relative;overflow:hidden;white-space:nowrap;margin:.5rem 0;font-size:1rem;color:var(--secondary-colour)}.recipe-card__title.is-overflowing{-webkit-mask-image:linear-gradient(to right,black 0,black calc(100% - 1rem),transparent 100%);mask-image:linear-gradient(to right,black 0,black calc(100% - 1rem),transparent 100%)}.recipe-card__title-text{display:inline-block;white-space:nowrap;will-change:transform;padding:0 1rem}@keyframes title-marquee{0%{transform:translate(0)}to{transform:translate(calc(-1 * var(--scroll-distance)))}}.recipe-card__meta{display:flex;gap:var(--small-gap);flex-wrap:wrap}.recipe-card__pill{display:block;font-size:.75rem;padding:var(--xsmall-gap) var(--medium-gap);border-radius:var(--large-gap);color:var(--background-colour);border:1px solid var(--secondary-50pct-colour);background:var(--secondary-50pct-colour)}@media(min-width:640px){.recipe-card__link{padding:var(--large-gap);border-radius:var(--xlarge-gap)}}@media(hover:none)and (pointer:coarse){.recipe-card__title{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.recipe-card__title::-webkit-scrollbar{display:none}}@media(hover:hover)and (pointer:fine){.recipe-card__title:hover .recipe-card__title-text{animation:title-marquee var(--scroll-duration) linear forwards}}.favourite-toggle{position:absolute;top:var(--xlarge-gap);right:var(--xlarge-gap);display:grid;place-items:center;z-index:10}.favourite-toggle__button{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:1.5rem;color:var(--background-colour);background-color:var(--secondary-colour);border:1px solid var(--secondary-colour)}.favourite-toggle__button:hover{background-color:var(--secondary-light-colour);border:1px solid var(--secondary-light-colour)}.status-panel{position:relative;display:grid;grid-template-rows:var(--header-height) 1fr;place-items:center;text-align:center;height:100dvh;border:1px solid var(--background-colour);border-radius:var(--xxlarge-gap);padding:var(--medium-gap);background:var(--background-colour)}.status-panel__title{position:absolute;margin:0 0 var(--medium-gap) 0;width:80dvw;font-size:2rem;line-height:1.25;color:var(--secondary-colour)}.status-panel__message{padding:7rem 0 0;width:80dvw;line-height:1.5;color:var(--secondary-colour)}.loading-spinner{position:absolute;top:calc(50dvh - 75px);left:calc(50dvw - 75px);width:var(--spinner-size, 150px);height:var(--spinner-size, 150px);display:grid;place-items:center}.loading-spinner__svg{width:100%;height:100%;animation:spinner-rotate var(--spinner-duration, 4.8s) linear infinite;will-change:transform}.loading-spinner__text{font:800 1rem/1 Rubik,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;letter-spacing:.05em;text-transform:uppercase;fill:currentColor}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.page-navigation__pagination{display:grid;grid-template-columns:1fr;place-items:center}.pagination-limit--blank{display:none}.pagination-nav{display:grid;grid-template-columns:1fr 1fr 7rem 1fr 1fr;place-items:center;gap:.5rem;padding:.5rem;border-radius:var(--medium-gap);border:1px solid var(--secondary-colour)}.nav-info-page{color:var(--accent-dark-colour)}.nav-info-optional{display:none}.nav-button{position:relative;display:grid;place-items:center;font-family:var(--font-heading);font-weight:800;width:2.25rem;height:2.25rem;padding:var(--xsmall-gap);border-radius:var(--small-gap);color:var(--background-colour);background-color:var(--primary-colour);border:1px solid var(--primary-colour)}.nav-button-text{display:none}.nav-button-icon{display:block}.nav-button.is-loading .nav-button-text,.nav-button.is-loading .nav-button-icon{visibility:hidden}.nav-button-spinner{position:absolute;width:1rem;height:1rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:nav-spin .7s linear infinite;opacity:0}.nav-button.is-loading .nav-button-spinner{opacity:1}.nav-button:disabled{pointer-events:none;cursor:default}.nav-button:disabled:after{content:"";position:absolute;inset:-1px;background:var(--disabled-colour);border-radius:inherit}.nav-button.is-loading:disabled:after{background:transparent}.nav-button:hover{cursor:pointer;color:var(--background-colour);background-color:var(--primary-light-colour);border:1px solid var(--primary-light-colour)}.nav-button:active{color:var(--secondary-colour);background-color:var(--accent-colour);border:1px solid var(--accent-colour)}.pagination-limit{display:none}.limit-button{position:relative;display:grid;place-items:center;font-family:var(--font-heading);font-weight:800;width:2.25rem;height:2.25rem;padding:var(--xsmall-gap);border-radius:var(--small-gap);color:var(--background-colour);background-color:var(--primary-colour);border:1px solid var(--primary-colour)}.limit-button.is-loading .limit-button-text{visibility:hidden}.limit-button-spinner{position:absolute;width:1rem;height:1rem;border:2px solid var(--background-colour);border-top-color:transparent;border-radius:50%;animation:nav-spin .7s linear infinite;opacity:0}.limit-button.is-loading .limit-button-spinner{opacity:1}.limit-button:disabled{pointer-events:none;cursor:default}.limit-button:disabled:after{content:"";position:absolute;inset:-1px;background:var(--disabled-colour);border-radius:inherit}.limit-button.is-loading:disabled:after{background:transparent}.limit-button:hover{color:var(--background-colour);background-color:var(--primary-light-colour);border:1px solid var(--primary-light-colour)}.limit-button:active{color:var(--secondary-colour);background-color:var(--accent-colour);border:1px solid var(--accent-colour)}@keyframes nav-spin{to{transform:rotate(360deg)}}.footer-spacer{height:var(--xlarge-gap)}@media(min-width:640px){.page-navigation__pagination{grid-template-columns:1fr 8fr 1fr}.pagination-nav{display:grid;grid-template-columns:1fr 1fr 10rem 1fr 1fr}.nav-info-optional{display:inline}.pagination-limit--blank{display:block;width:6rem;height:3.25rem;justify-self:left;margin:0 0 0 var(--medium-gap)}.pagination-limit{display:grid;grid-template-columns:1fr 1fr;place-items:center;justify-self:right;gap:.5rem;margin:0 var(--large-gap) 0 0;padding:.5rem;border-radius:var(--medium-gap);border:1px solid var(--secondary-colour)}.footer-spacer{height:var(--xxlarge-gap)}}@media(min-width:1025px){.pagination-limit--blank{margin:0 0 0 var(--xlarge-gap)}.pagination-limit{margin:0 var(--xlarge-gap) 0 0}.nav-button{width:5rem;height:2rem}.nav-button-text{display:block}.nav-button-icon{display:none}.footer-spacer{height:var(--xxxlarge-gap)}}.recipe-detail{display:flex;flex-direction:column;align-items:center;gap:var(--medium-gap);text-align:center;padding:0 var(--medium-gap);background-color:var(--background-colour)}.recipe-detail section{max-width:1152px}.recipe-detail__hero{display:grid;grid-template-rows:var(--header-height) auto;gap:var(--medium-gap)}.recipe-detail__info-container{display:grid;grid-template-columns:1fr;place-items:center;gap:var(--large-gap);width:100%;padding:var(--large-gap);border-radius:var(--xlarge-gap);border:1px solid var(--primary-colour);background:var(--background-colour)}.recipe-detail__img{width:100%;aspect-ratio:5 / 4;display:block;object-fit:cover;object-position:center;overflow:hidden;border-radius:var(--medium-gap)}.recipe-detail__img-fallback{width:100%;height:320px;background:linear-gradient(135deg,#f2f2f2,#e6e6e6)}.recipe-detail__info{display:flex;flex-direction:column;align-items:center;gap:var(--medium-gap)}.recipe-detail__title{font-size:1.5rem;line-height:1.25;color:var(--secondary-colour)}.recipe-detail__description{width:95%}.recipe-detail__meta{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--medium-gap)}.pill{width:100%;display:inline-block;padding:var(--xsmall-gap) var(--medium-gap);border-radius:var(--xlarge-gap);font-weight:600;color:var(--background-colour)}.pill-time{background-color:var(--primary-50pct-colour)}.pill-time--total{background-color:var(--primary-colour)}.pill-info{background-color:var(--secondary-50pct-colour)}.pill-info--cuisine{color:var(--secondary-colour);border:1px solid var(--secondary-colour)}.recipe-detail__ingredients{display:flex;flex-direction:column;align-items:center;justify-content:start;gap:var(--medium-gap);width:100%;padding:var(--large-gap);border-radius:var(--xlarge-gap);background:var(--secondary-10pct-colour)}.recipe-detail__ingredient-line{width:100%;display:inline-block;padding:var(--xsmall-gap) var(--medium-gap);border-radius:var(--xlarge-gap);background-color:var(--background-colour)}.recipe-detail__instructions{display:flex;flex-direction:column;align-items:center;justify-content:start;gap:var(--xlarge-gap);padding:var(--large-gap);margin-bottom:var(--xlarge-gap);border-radius:var(--xlarge-gap);border:1px solid var(--primary-colour)}.recipe-detail__instruction h4{font-weight:600}@media(min-width:640px){.recipe-detail{padding:0 var(--large-gap);gap:var(--large-gap)}.recipe-detail__info-container{grid-template-columns:1fr 1fr;place-items:initial;height:70dvh;padding:var(--large-gap);gap:var(--large-gap)}.recipe-detail__img{aspect-ratio:auto;height:100%}.recipe-detail__instructions{margin-bottom:var(--xxlarge-gap)}}@media(min-width:1025px){.recipe-detail{padding:0 var(--xlarge-gap);gap:var(--xlarge-gap)}.recipe-detail__instructions{margin-bottom:var(--xxxlarge-gap)}}.auth-page{display:grid;place-items:center}.auth-page__background,.back-button--page{display:none}.back-button--form{display:block;margin:0 0 1rem}.auth-page__form{position:relative;z-index:5;width:min(80dvw,var(--auth-form-max-width, 512px));margin:10dvw 0;padding:var(--large-gap);border-radius:var(--xlarge-gap);color:var(--secondary-colour);background-color:var(--background-colour)}.auth-page__form--registration{--auth-form-max-width: 1024px}.auth-page__form--login{--auth-form-max-width: 512px}.auth-form__back-button{margin:.5rem 0}.auth-form__header{margin-bottom:1rem}.auth-form__title{margin:0 0 .75rem}.auth-form{display:grid;gap:var(--medium-gap)}.auth-form fieldset{display:flex;flex-direction:column;justify-content:space-between;gap:var(--medium-gap);border:none}.auth-form__label{display:grid;gap:var(--xsmall-gap);font-size:1rem}.auth-form__input{padding:var(--small-gap);border-radius:var(--medium-gap);font-family:var(--font-heading);border:2px solid var(--secondary-10pct-colour)}.auth-form__input:focus{outline:none;border:2px solid var(--accent-colour)}.auth-form__button{position:relative;display:grid;place-items:center;padding:var(--small-gap);border-radius:var(--medium-gap);font-family:var(--font-heading);font-weight:800;font-size:1rem;cursor:pointer;border:1px solid var(--secondary-colour);color:var(--background-colour);background-color:var(--secondary-colour)}.auth-form__button:hover{background-color:var(--secondary-light-colour);border:1px solid var(--secondary-light-colour)}.auth-form__button:active{background-color:var(--accent-colour);border:1px solid var(--accent-colour)}.auth-form__button.is-invalid{cursor:not-allowed;opacity:.25}.auth-form__spinner{position:absolute;width:1.15rem;height:1.15rem;border:2px solid var(--background-colour);border-top-color:transparent;border-radius:50%;animation:hero-cta-spin .5s linear infinite;opacity:0}.auth-form__button.is-loading .auth-form__text{visibility:hidden}.auth-form__button.is-loading .auth-form__spinner{opacity:1}@keyframes hero-cta-spin{to{transform:rotate(360deg)}}.auth-form__error{padding:var(--small-gap) var(--medium-gap);border-radius:var(--large-gap);border:1px solid var(--accent-colour);font-size:.75rem;text-align:center}.auth-form__hint{font-size:.75rem}.auth-form__footer{margin:.5rem 0 0;font-size:1rem}@media(min-width:640px){.auth-page{height:100dvh;width:100dvw;min-height:100dvh;min-width:100dvw;position:relative;overflow:hidden;isolation:isolate}.auth-page__background{display:block;position:absolute}.back-button--page{display:block;position:absolute;top:var(--large-gap);left:var(--large-gap)}.back-button--form{display:none}.auth-page__form{border:1px solid var(--secondary-colour)}.auth-form fieldset{flex-direction:row;flex:1}.auth-form__label{width:100%}.auth-form__back-button{display:none}}.profile__user{display:grid;grid-template-rows:var(--header-height) 1fr;place-items:center;height:100dvh}.user__dashboard{display:flex;flex-direction:column;width:80dvw;max-width:512px;padding:var(--xlarge-gap);gap:var(--xlarge-gap);border-radius:var(--xlarge-gap);border:1px solid var(--secondary-colour)}.user__controls{display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:var(--small-gap)}.user__controls button{position:relative;display:grid;place-items:center;padding:var(--small-gap);border-radius:var(--medium-gap);width:100%;font-family:var(--font-heading);font-weight:800;font-size:1rem;cursor:pointer}.user__logout,.user__delete-user{border:1px solid var(--secondary-colour);color:var(--background-colour);background-color:var(--secondary-colour)}.user__logout:hover,.user__delete-user:hover{border-color:var(--secondary-light-colour);background-color:var(--secondary-light-colour)}.user__change-password{border:1px solid var(--primary-light-colour);color:var(--background-colour);background-color:var(--primary-light-colour)}.user__change-password:hover{border-color:var(--primary-colour);background-color:var(--primary-colour)}.user__controls button:active{border-color:var(--accent-colour);color:var(--secondary-colour);background-color:var(--accent-colour)}@media(min-width:1025px){.user__dashboard{max-width:820px}.user__controls{flex-direction:row}.user__controls button{width:50%}}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#00000020;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.modal-panel{display:flex;flex-direction:column;position:relative;z-index:105;width:min(80dvw,var(--auth-form-max-width, 512px));margin:10dvw 0;padding:var(--large-gap);gap:var(--large-gap);border-radius:var(--xlarge-gap);color:var(--secondary-colour);background-color:var(--background-colour)}.modal-panel__exit-button{display:grid;place-items:center;justify-self:right;width:2.25rem;height:2.25rem;padding:var(--xsmall-gap);border-radius:var(--medium-gap);color:var(--background-colour);background-color:var(--primary-light-colour);border:2px solid var(--primary-light-colour)}.modal-panel__exit-button:hover{color:var(--background-colour);background-color:var(--primary-colour);border-color:var(--primary-colour)}.modal-panel__exit-button:active{color:var(--secondary-colour);background-color:var(--accent-colour);border-color:var(--accent-colour)}.password-form,.confirm-delete{display:grid;gap:var(--medium-gap)}.password-form__label{display:grid;gap:var(--xsmall-gap);font-size:1rem}.password-form__input{padding:var(--small-gap);border-radius:var(--medium-gap);font-family:var(--font-heading);border:2px solid var(--secondary-10pct-colour)}.password-form__input:focus{outline:none;border:2px solid var(--accent-colour)}.password-form__button,.confirm-delete__button{position:relative;display:grid;place-items:center;padding:var(--small-gap);border-radius:var(--medium-gap);font-family:var(--font-heading);font-weight:800;font-size:1rem;cursor:pointer;border:1px solid var(--secondary-colour);color:var(--background-colour);background-color:var(--secondary-colour)}.password-form__button:hover,.confirm-delete__button:hover{background-color:var(--secondary-light-colour);border:1px solid var(--secondary-light-colour)}.password-form__button:active,.confirm-delete__button:active{background-color:var(--accent-colour);border:1px solid var(--accent-colour)}.password-form__button.is-invalid{cursor:not-allowed;opacity:.25}.password-form__spinner,.confirm-delete__spinner{position:absolute;width:1.15rem;height:1.15rem;border:2px solid var(--background-colour);border-top-color:transparent;border-radius:50%;animation:hero-cta-spin .5s linear infinite;opacity:0}.password-form__button.is-loading .password-form__text{visibility:hidden}.password-form__button.is-loading .password-form__spinner{opacity:1}
