@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
/* =========================
   VARIABLES
========================= */

:root {

    --bg:#111111;
    --surface:#1b1b1b;

    --gold:#C8A04D;

    --text:#F8F5EF;
    --muted:#c8c2b8;

    --blue:#1F355E;
    --brown:#6A4A32;

    --max-width:1200px;

}




/* =========================
   RESET
========================= */

* {
    margin:0;
    padding:0;
    box-sizing:border-box;
}


html {
    scroll-behavior:smooth;
}


body {

    background:var(--bg);
    color:var(--text);

    font-family:"Inter", sans-serif;

    font-size:1.05rem;

    line-height:1.8;

}





img {

    max-width:100%;
    display:block;

}



a {

    color:inherit;
    text-decoration:none;

}



.container {

    width:90%;
    max-width:var(--max-width);

    margin:auto;

}





/* =========================
   TYPOGRAPHY
========================= */


h1,
h2,
h3 {

    font-family:"Cormorant Garamond", serif;

    font-weight:600;

    line-height:1.2;

}



h1 {

    font-size:clamp(3rem,6vw,5rem);

}



h2 {

    font-size:clamp(2.2rem,4vw,3rem);

    margin-bottom:2rem;

}



h3 {

    font-size:1.8rem;

    margin-bottom:1rem;

}




p {

    color:var(--muted);

    margin-bottom:1.5rem;

}





/* =========================
   HEADER
========================= */


header {

    position:sticky;

    top:0;

    background:rgba(17,17,17,.9);

    backdrop-filter:blur(10px);

    z-index:10;

    border-bottom:1px solid rgba(200,160,77,.2);

}



.nav {

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:1.5rem 0;

}



.logo {

    font-family:"Cormorant Garamond", serif;

    font-size:2rem;

    color:var(--gold);

}



nav {

    display:flex;

    gap:2rem;

}



nav a {

    font-size:.95rem;

    transition:.3s;

}



nav a:hover {

    color:var(--gold);

}







/* =========================
   HERO
========================= */


.hero {

    padding:6rem 0;

}



.hero-grid {

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:5rem;

    align-items:center;

}



.eyebrow {

    color:var(--gold);

    text-transform:uppercase;

    letter-spacing:3px;

    font-size:.9rem;

}



.hero-description {

    max-width:600px;

    font-size:1.15rem;

}



.hero-image img {

    border:1px solid rgba(200,160,77,.3);

}



.hero-buttons {

    display:flex;

    gap:1rem;

    flex-wrap:wrap;

    margin-top:2rem;

}





.button {

    display:inline-block;

    padding:.8rem 1.8rem;

    border:1px solid var(--gold);

    color:var(--gold);

    transition:.3s;

}



.button:hover {

    background:var(--gold);

    color:#111;

}



.button.primary {

    background:var(--gold);

    color:#111;

}



.secondary {

    border-color:#777;

    color:white;

}



.availability {

    font-size:.9rem;

    margin-top:1rem;

}








/* =========================
   SECTIONS
========================= */


section {

    padding:6rem 0;

}



section:nth-child(even) {

    background:var(--surface);

}





.section-intro {

    max-width:700px;

}







/* =========================
   CARDS
========================= */


.cards,
.values-grid {

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:2rem;

    margin-top:3rem;

}



.cards article,
.value-card {

    background:var(--surface);

    padding:2rem;

    border-top:2px solid var(--gold);

}




.value-card {

    transition:.3s;

}



.value-card:hover {

    transform:translateY(-5px);

}







/* =========================
   GALLERY
========================= */


.gallery {

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:1.5rem;

}



.gallery img {

    aspect-ratio:1/1;

    object-fit:cover;

    border:1px solid rgba(200,160,77,.3);

}








/* =========================
   OPEN SOURCE
========================= */


.opensource {

    text-align:center;

    background:#0b0b0b;

}



.opensource p {

    max-width:700px;

    margin:0 auto 2rem;

}








/* =========================
   FAQ
========================= */


.faq-item {

    border-bottom:1px solid rgba(200,160,77,.3);

    padding:1.5rem 0;

}



.faq-item h3 {

    color:var(--gold);

}


/* =========================
   FAQ ACCORDION
========================= */

.faq-list {

    margin-top:3rem;

}


.faq-item {

    background:var(--surface);

    border-bottom:1px solid rgba(200,160,77,0.3);

    padding:1.5rem;

}


.faq-item summary {

    font-family:"Cormorant Garamond", serif;

    font-size:1.7rem;

    font-weight:600;

    color:var(--gold);

    /* cursor:pointer; */

    list-style:none;

}


.faq-item summary::-webkit-details-marker {

    display:none;

}


.faq-item summary::after {

    content:"+";

    float:right;

    font-family:"Inter", sans-serif;

    font-size:1.5rem;

}


.faq-item[open] summary::after {

    content:"−";

}


.faq-item p {

    margin-top:1rem;

    color:var(--text);

}




/* =========================
   FOOTER
========================= */


footer {

    border-top:1px solid rgba(200,160,77,.3);

    padding:3rem 0;

}



.footer {

    display:flex;

    justify-content:space-between;

}



.footer div:last-child {

    display:flex;

    gap:2rem;

}



.footer a:hover {

    color:var(--gold);

}







/* =========================
   MOBILE
========================= */


@media(max-width:900px){


.nav {

    flex-direction:column;

    gap:1rem;

}


nav {

    flex-wrap:wrap;

    justify-content:center;

}



.hero-grid {

    grid-template-columns:1fr;

}



.cards,
.values-grid,
.gallery {

    grid-template-columns:1fr;

}



.footer {

    flex-direction:column;

    gap:2rem;

}


}

/* =========================
   EDITION DETAILS
========================= */


.details-grid {

    display:grid;

    grid-template-columns:repeat(2, 1fr);

    gap:2rem;

    margin-top:3rem;

}



.detail-item {

    padding:2rem;

    border-left:2px solid var(--gold);

    background:var(--surface);

}



.detail-item h3 {

    color:var(--gold);

    margin-bottom:.5rem;

}



.detail-item p {

    margin-bottom:0;

}



@media(max-width:900px){

    .details-grid {

        grid-template-columns:1fr;

    }

}


/* =========================
   MAKING OF THE EDITION
========================= */


.making-grid {

    display:grid;

    grid-template-columns:repeat(2, 1fr);

    gap:2rem;

    margin-top:3rem;

}


.making-card {

    padding:2rem;

    background:var(--surface);

    border-left:2px solid var(--gold);

}


.making-card h3 {

    color:var(--gold);

}



@media(max-width:900px){

    .making-grid {

        grid-template-columns:1fr;

    }

}


/* =========================
   Book Layout
========================= */


.book-layout{
    display:flex;
    gap:3rem;
    align-items:flex-start;
}

.book-cover{
    width:260px;
    height:auto;
    flex-shrink:0;
}



/* =========================
   Book Preview
========================= */

.book-preview{

    max-width:650px;
    margin:2rem auto 3rem;
    padding:1.75rem;

    text-align:center;

    background:#111111;

    border:1px solid #ddd;

    border-radius:8px;

}