/*=========================================================
  THE SPOILED CHEF
  BASE STYLES
=========================================================*/

/*=========================================================
  RESET
=========================================================*/

*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

/*=========================================================
  HTML
=========================================================*/

html{

    scroll-behavior:smooth;

    font-size:100%;

    -webkit-text-size-adjust:100%;

}

/*=========================================================
  BODY
=========================================================*/

body{

    font-family:var(--font-body);

    font-size:var(--font-size-base);

    font-weight:var(--fw-400);

    line-height:var(--line-height-body);

    color:var(--color-text);

    background:var(--color-background);

    overflow-x:hidden;

    text-rendering:optimizeLegibility;

    -webkit-font-smoothing:antialiased;

    -moz-osx-font-smoothing:grayscale;

}

/*=========================================================
  MEDIA
=========================================================*/

img,
picture,
svg,
video,
canvas{

    display:block;

    max-width:100%;

}

img{

    height:auto;

    border:none;

}

/*=========================================================
  LINKS
=========================================================*/

a{

    text-decoration:none;

    color:inherit;

    transition:var(--transition);

}

a:hover{

    text-decoration:none;

}

/*=========================================================
  LIST
=========================================================*/

ul,
ol{

    list-style:none;

}

/*=========================================================
  BUTTONS
=========================================================*/

button{

    border:none;

    background:none;

    outline:none;

    cursor:pointer;

    font-family:inherit;

    transition:var(--transition);

}

button:disabled{

    cursor:not-allowed;

    opacity:.6;

}

/*=========================================================
  INPUTS
=========================================================*/

input,
textarea,
select{

    width:100%;

    font:inherit;

    border:none;

    outline:none;

    background:none;

}

textarea{

    resize:vertical;

}

/*=========================================================
  TABLE
=========================================================*/

table{

    width:100%;

    border-collapse:collapse;

}

/*=========================================================
  IFRAME
=========================================================*/

iframe{

    width:100%;

    border:none;

}

/*=========================================================
  HR
=========================================================*/

hr{

    border:none;

    border-top:1px solid var(--color-border);

}

/*=========================================================
  SELECTION
=========================================================*/

::selection{

    background:var(--color-primary);

    color:var(--color-white);

}

/*=========================================================
  PLACEHOLDER
=========================================================*/

::placeholder{

    color:var(--color-text-light);

    opacity:1;

}

/*=========================================================
  SCROLLBAR
=========================================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#f2f2f2;

}

::-webkit-scrollbar-thumb{

    background:var(--color-primary);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--color-primary-dark);

}

/*=========================================================
  FOCUS
=========================================================*/

:focus-visible{

    outline:3px solid var(--color-secondary);

    outline-offset:3px;

}

/*=========================================================
  SECTION
=========================================================*/

section{

    position:relative;

}

/*=========================================================
  SVG
=========================================================*/

svg{

    display:block;

}

/*=========================================================
  HIDDEN
=========================================================*/

[hidden]{

    display:none !important;

}

/*=========================================================
  SCREEN READER ONLY
=========================================================*/

.visually-hidden{

    position:absolute;

    width:1px;

    height:1px;

    margin:-1px;

    padding:0;

    overflow:hidden;

    clip:rect(0,0,0,0);

    white-space:nowrap;

    border:0;

}

/*=========================================================
  COMMON ANIMATIONS
=========================================================*/

.fade{

    opacity:0;

}

.loaded .fade{

    opacity:1;

    transition:opacity .6s ease;

}

/*=========================================================
  REDUCE MOTION
=========================================================*/

@media (prefers-reduced-motion: reduce){

    *{

        animation:none !important;

        transition:none !important;

        scroll-behavior:auto !important;

    }

}