/* =================================================================
   PALETĂ
================================================================== */
:root{
    --contact-bg:#f8f4ef;
    --contact-brown:#4a2e1f;
    --contact-brown-dark:#3a2317;
    --contact-white:#ffffff;
    --contact-text:#333333;
    --contact-muted:#6b6560;
    --contact-green:#b7d43b;
    --contact-red:#c2452d;
    --contact-badge-bg:#efe8e3;
    --contact-border:rgba(74,46,31,.14);
}

.contact-page,
.contact-page *{
    box-sizing:border-box;
}

.contact-page{
    font-family:"Special Gothic", sans-serif;
    background:var(--contact-bg);
}

/* =================================================================
   HERO
================================================================== */
.contact-hero{
    position:relative;
    width:100%;
    height:460px;
    overflow:hidden;
background: url('despre.webp');
background-size:cover;
    background-position:center;
}

.contact-hero-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.5);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:0 6%;
    opacity:0;
    transition:opacity .8s ease;
}
.contact-hero.contact-in-view .contact-hero-overlay{
    opacity:1;
}

.contact-hero-title,
.contact-hero-subtitle{
    opacity:0;
    transform:translateY(35px);
    transition:opacity .8s ease, transform .8s ease;
}
.contact-hero.contact-in-view .contact-hero-title{
    opacity:1; transform:translateY(0);
}
.contact-hero.contact-in-view .contact-hero-subtitle{
    opacity:1; transform:translateY(0);
    transition-delay:.15s;
}

.contact-hero-title{
    font-size:clamp(42px, 5vw, 64px);
    font-weight:700;
    color:var(--contact-white);
    margin-bottom:22px;
}

.contact-hero-subtitle{
    font-size:19px;
    line-height:1.6;
    max-width:620px;
    color:rgba(255,255,255,.9);
}

/* =================================================================
   SECȚIUNE PRINCIPALĂ
================================================================== */
.contact-info-section{
    background:var(--contact-bg);
}

.contact-layout{
    max-width:1300px;
    margin:auto;
    padding:70px 7% 120px;
}

/* ---- Status badge -----------------------------------------------------*/
.contact-status{
    display:inline-flex;
    align-items:center;
    gap:14px;
    background:var(--contact-badge-bg);
    border-radius:50px;
    padding:12px 22px;
    font-size:15px;
    color:var(--contact-brown);
    box-shadow:0 6px 18px rgba(0,0,0,.05);
    margin-bottom:40px;

    opacity:0;
    transform:translateY(-20px);
    transition:opacity .7s ease, transform .7s ease;
}
.contact-info-section.contact-in-view .contact-status{
    opacity:1;
    transform:translateY(0);
}

.contact-status-dot{
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--contact-green);
    flex-shrink:0;
    transition:background .3s ease, box-shadow .3s ease;
}

/* Verde când brutăria este deschisă, roșu când este închisă.
   Clasele sunt puse din JS (vezi OPENING_HOURS din script.js). */
.contact-status.is-open .contact-status-dot{
    background:var(--contact-green);
    box-shadow:0 0 0 3px rgba(183,212,59,.25);
}
.contact-status.is-closed .contact-status-dot{
    background:var(--contact-red);
    box-shadow:0 0 0 3px rgba(194,69,45,.2);
}

.contact-status-sep{
    color:var(--contact-muted);
}

/* ---- Layout coloane -----------------------------------------------------*/
.contact-columns{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:stretch;
}

.contact-info{
    display:flex;
    flex-direction:column;
    gap:22px;
}

/* =================================================================
   CARDURI
================================================================== */
.contact-card{
    background:var(--contact-white);
    border-radius:22px;
    padding:26px 28px;
    display:flex;
    align-items:center;
    gap:20px;
    box-shadow:0 12px 32px rgba(0,0,0,.06);
    transition:transform .35s ease, box-shadow .35s ease;

    opacity:0;
    transform:translateY(30px);
}
.contact-info-section.contact-in-view .contact-card{
    opacity:1;
    transform:translateY(0);
    transition:opacity .7s ease, transform .7s ease, box-shadow .35s ease;
}
.contact-info-section.contact-in-view .contact-card:nth-child(1){ transition-delay:.1s; }
.contact-info-section.contact-in-view .contact-card:nth-child(2){ transition-delay:.2s; }
.contact-info-section.contact-in-view .contact-card:nth-child(3){ transition-delay:.3s; }

.contact-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 46px rgba(0,0,0,.1);
}
.contact-info-section.contact-in-view .contact-card:hover{
    transition:transform .35s ease, box-shadow .35s ease;
}

.contact-card-icon{
    width:50px;
    height:50px;
    border-radius:50%;
    background:var(--contact-badge-bg);
    color:var(--contact-brown);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:19px;
    flex-shrink:0;
}

.contact-card-body{
    flex:1;
    min-width:0;
}
.contact-card-body h3{
    font-size:21px;
    font-weight:700;
    color:var(--contact-text);
    margin-bottom:6px;
}
.contact-card-body p{
    font-size:16.5px;
    color:var(--contact-muted);
    word-break:break-word;
}

.contact-copy-btn{
    background:transparent;
    border:none;
    color:var(--contact-muted);
    font-size:17px;
    cursor:pointer;
    padding:8px;
    flex-shrink:0;
    transition:color .3s ease, transform .3s ease;
}
.contact-copy-btn:hover,
.contact-copy-btn:focus-visible{
    color:var(--contact-brown);
    transform:rotate(-10deg);
}

/* =================================================================
   SOCIAL BUTOANE
================================================================== */
.contact-social{
    display:flex;
    gap:16px;
    margin-top:8px;

    opacity:0;
    transform:translateY(30px);
    transition:opacity .7s ease .4s, transform .7s ease .4s;
}
.contact-info-section.contact-in-view .contact-social{
    opacity:1;
    transform:translateY(0);
}

.contact-social-btn{
    flex:1;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:16px 20px;
    border:2px solid var(--contact-border);
    border-radius:16px;
    background:var(--contact-white);
    color:var(--contact-text);
    text-decoration:none;
    font-size:16px;
    font-weight:500;
    transition:transform .3s ease, border-color .3s ease, background .3s ease;
}
.contact-social-btn:hover,
.contact-social-btn:focus-visible{
    transform:scale(1.03);
    border-color:var(--contact-brown);
    background:var(--contact-badge-bg);
}

/* =================================================================
   BUTON NAVIGARE
================================================================== */
.contact-nav-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    background:var(--contact-brown);
    color:var(--contact-white);
    text-decoration:none;
    padding:20px 30px;
    border-radius:16px;
    font-size:18px;
    font-weight:600;
    letter-spacing:.3px;
    margin-top:6px;
    transition:background .35s ease, transform .35s ease, box-shadow .35s ease;

    opacity:0;
    transform:translateY(30px);
}
.contact-info-section.contact-in-view .contact-nav-btn{
    opacity:1;
    transform:translateY(0);
    transition:opacity .7s ease .5s, transform .7s ease .5s, background .35s ease, box-shadow .35s ease;
}

.contact-nav-btn:hover,
.contact-nav-btn:focus-visible{
    background:var(--contact-brown-dark);
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(0,0,0,.18);
}

/* =================================================================
   HARTĂ
================================================================== */
.contact-map{
    border-radius:32px;
    overflow:hidden;
    box-shadow:0 20px 50px rgba(0,0,0,.10);

    opacity:0;
    transform:translateY(30px);
    transition:opacity .8s ease .2s, transform .8s ease .2s;
}
.contact-info-section.contact-in-view .contact-map{
    opacity:1;
    transform:translateY(0);
}

.contact-map iframe{
    display:block;
    width:100%;
    height:100%;
    min-height:560px;
    border:none;
}

/* =================================================================
   TOAST
================================================================== */
.contact-toast{
    position:fixed;
    left:50%;
    bottom:40px;
    transform:translate(-50%, 20px);
    background:var(--contact-brown);
    color:var(--contact-white);
    padding:14px 26px;
    border-radius:14px;
    font-size:15px;
    font-weight:500;
    box-shadow:0 14px 34px rgba(0,0,0,.25);
    opacity:0;
    pointer-events:none;
    transition:opacity .3s ease, transform .3s ease;
    z-index:1000;
}
.contact-toast.contact-toast-show{
    opacity:1;
    transform:translate(-50%, 0);
}

/* =================================================================
   RESPONSIVE
================================================================== */
@media (max-width:1000px){
    .contact-columns{
        gap:34px;
    }
    .contact-layout{
        padding:60px 5% 100px;
    }
}

@media (max-width:768px){
    .contact-hero{
        height:380px;
    }
    .contact-columns{
        grid-template-columns:1fr;
    }
    .contact-map{
        min-height:340px;
    }
    .contact-map iframe{
        min-height:340px;
    }
    .contact-social{
        flex-direction:column;
    }
    .contact-nav-btn{
        width:100%;
    }
}

/* =================================================================
   ACCESIBILITATE
================================================================== */
@media (prefers-reduced-motion: reduce){
    .contact-hero-overlay,
    .contact-hero-title,
    .contact-hero-subtitle,
    .contact-status,
    .contact-card,
    .contact-social,
    .contact-nav-btn,
    .contact-map{
        transition:none !important;
        opacity:1 !important;
        transform:none !important;
    }
    .contact-toast{
        transition:none !important;
        transform:translate(-50%, 0) !important;
    }
}