:root {
    --royal-azure: #1E2A78;
    --azure-deep: #0B1120;
    --polished-silver: #E2E8F0;
    --text-dark: #0F172A;
    --text-muted: #475569;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
body { background: #fff; color: var(--text-dark); font-family: 'Inter', sans-serif; line-height: 1.6; display: flex; flex-direction: column; min-height: 100vh; }
.container { max-width: 1100px; margin: 0 auto; padding: 0 24px; width: 100%; }

/* --- HEADER --- */
header { padding: 60px 0; text-align: center; border-bottom: 1px solid var(--polished-silver); }
.brand-name { font-family: 'Playfair Display', serif; font-size: 2.2rem; color: var(--royal-azure); text-transform: uppercase; letter-spacing: 3px; font-weight: 800; }
.brand-tagline { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 5px; color: var(--text-muted); margin-top: 5px; }

/* --- COMING SOON SECTION --- */
.hero-notice { padding: 80px 0; text-align: center; }
.status-badge { display: inline-block; padding: 8px 16px; background: var(--polished-silver); color: var(--royal-azure); font-weight: 700; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 25px; border-radius: 4px; }
.hero-notice h1 { font-family: 'Playfair Display', serif; font-size: 2.5rem; margin-bottom: 20px; }
.hero-notice p { color: var(--text-muted); max-width: 650px; margin: 0 auto; font-size: 1.1rem; }

/* --- THE DOSSIER ROW --- */
.dossier-row { display: grid; grid-template-columns: 1fr 280px 1fr; gap: 30px; align-items: start; margin: 100px 0 60px; }
.dossier-card { background: #F8FAFC; border: 1px solid var(--polished-silver); padding: 35px; height: 100%; box-shadow: 0 4px 6px rgba(0,0,0,0.02); }
.dossier-card h3 { color: var(--royal-azure); font-family: 'Playfair Display', serif; font-style: italic; margin-bottom: 20px; font-size: 1.5rem; }
.dossier-card p { font-size: 0.95rem; color: var(--text-muted); margin-bottom: 15px; }

/* CLEAN LINE FILIGREE FRAME */
.headshot-center { 
    position: relative; 
    top: -50px; 
    padding: 10px; /* Space between filigree and photo */
    background: #fff;
    
    /* THE BORDER: Clean line vector filigree */
    border: 20px solid transparent;
    border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23cbd5e1' stroke-width='1'%3E%3Cpath d='M20 10c0 0 5-5 10-5s10 5 10 5-5 5-10 5-10-5-10-5zM80 10c0 0-5-5-10-5s-10 5-10 5 5 5 10 5 10-5 10-5zM20 90c0 0 5 5 10 5s10-5 10-5-5-5-10-5-10 5-10 5zM80 90c0 0-5 5-10 5s-10-5-10-5 5-5 10-5 10 5 10 5z'/%3E%3Ccircle cx='50' cy='5' r='2'/%3E%3Ccircle cx='50' cy='95' r='2'/%3E%3Ccircle cx='5' cy='50' r='2'/%3E%3Ccircle cx='95' cy='50' r='2'/%3E%3C/g%3E%3C/svg%3E");
    border-image-slice: 30;
    border-image-repeat: round;

    /* THE SHADOW: Deep Royal Azure */
    box-shadow: 12px 12px 0px 0px var(--royal-azure);
    transition: transform 0.3s ease; 
}

.headshot-center img { 
    width: 100%; 
    display: block; 
    border: 1px solid var(--royal-azure); 
    background: #fff; 
}



/* --- CONTACT FOOTER --- */
.contact-footer { background: var(--royal-azure); color: #fff; padding: 60px 40px; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 40px; margin-top: auto; }
.contact-item strong { display: block; font-size: 0.7rem; text-transform: uppercase; color: var(--polished-silver); opacity: 0.8; margin-bottom: 8px; letter-spacing: 1px; }
.contact-link { color: #fff; text-decoration: none; font-weight: 600; font-size: 1.1rem; transition: color 0.2s; }
.contact-link:hover { color: var(--polished-silver); }
.disclaimer { font-size: 0.75rem; color: var(--polished-silver); margin-top: 30px; grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,0.1); padding-top: 25px; line-height: 1.5; }

@media (max-width: 900px) {
    .dossier-row { grid-template-columns: 1fr; }
    .headshot-center { top: 0; order: -1; max-width: 320px; margin: 0 auto 40px; }
    .hero-notice h1 { font-size: 1.8rem; }
}
