@import url('https://fonts.cdnfonts.com/css/qarinthen');

@font-face {
    font-family: 'Edwardian Script';
    src: url('/fonts/EdwardianScriptITC.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Venice Classic';
    src: url('/fonts/VeniceClassic.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

:root{
    --dark-red: hsl(0, 70%, 17%);
    --lighter-red: hsl(359, 65%, 25%);
    --red: #87171d;
    --black: #333;
}

html{
    scrollbar-color: var(--red) #fff;
    scrollbar-width: thin;
    overflow-x: hidden;
}

::-webkit-scrollbar{
    width: 9px;
    height: 0;
}

::-webkit-scrollbar-track{
    background: #fff;
    border-radius: 0;
}

::-webkit-scrollbar-thumb{
    background: var(--red);
    border: 2px solid #fff;
    border-radius: 0;
}

::-webkit-scrollbar-corner{
    background: #fff;
}

body{
    display: flex;
        justify-content: center;
        align-items: flex-start;
    width: 100svw;
    min-height: 100svh;
    margin: 0;
    overflow-x: hidden;
    background-color: var(--dark-red);
    background-image: url("/assets/bg-red-01.gif");
    background-size: cover;
    font-size: calc(99px / 7);
    font-family: 'Qarinthen', serif;
    text-align: center;
    color: var(--black);
}

p{
    font-family: 'Venice Classic', serif;
}

h1, h2, h3{
    font-family: 'Edwardian Script', serif;
    margin: 0 auto;
    text-align: center;
    color: var(--red);
}

h2, h3{
    font-family: 'Venice Classic';
}

h1{
    font-size: 4em;
    transform: translateX(-0.2em);
}

main{
    margin: 0 auto;
}

.box17 {
    width: calc(67px * 2 + 99px * 4);
    box-sizing: border-box;
}

.u01 {
    background:url("/assets/f-ue.png") repeat-x;
    height:67px;
    margin:0 67px
}
.s01 {
    background:url("/assets/f-sita.png") repeat-x;
    height:67px;
    margin:0 67px
}
.box-top {
    background-image:url("/assets/f-kado1.png"), url("/assets/f-kado2.png");
    background-position:top left, top right;
    background-repeat:no-repeat, no-repeat;
    height:67px
}
.box-center {
    background-image:url("/assets/f-migi.png"), url("/assets/f-hidari.png");
    background-position:top right, top left;
    background-repeat:repeat-y, repeat-y;
}

.box-inner {
    background:#fff;
    margin:0 calc(67px / 2);
    min-height: auto;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.25em calc(99px / 3.5) 0.2em;

    > div{
        margin: auto;
        width: 100%;
        max-width: calc(99px * 4);
        display: grid;
            grid-template-areas: "intro doll" "sites sites";
            grid-template-columns: 60% 1fr;
            justify-content: center;
    }
}
.box-bottom {
    background-image:url("/assets/f-kado3.png"), url("/assets/f-kado4.png");
    background-position:top left, top right;
    background-repeat:no-repeat, no-repeat;
    height:67px
}

#intro, #doll, #sites{
    /* padding: calc(99px / 10); */
    align-items: center;
    align-self: center;
    justify-content: center;
    justify-self: center;
}

#intro{
    grid-area: intro;

    p{
        margin: 0.125em auto;
    }
}

#doll{
    grid-area: doll;
    max-width: calc(100% - 1em);
    border-radius: 5px;
}

#sites{
    grid-area: sites;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 0.7em;
    row-gap: 0.55em;

    div{
        display: contents;
    }

    a{
        text-decoration: none;
    }

    h2{
        font-size: 2em;
        margin: 1.1em auto 0.5em auto;
        width: 100%;
    }
}

.links-button{
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.webrings{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.35em;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.webrings > *{
    display: flex;
    justify-content: center;
    margin-inline: auto;
    max-width: 100%;
}

.webrings img{
    display: block;
    margin-inline: auto;
}

.sticker-stack{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35em;
}

.sticker-top-row,
.angel-bottom-row{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
}
