@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap";:root{--bg:#3a4242;--surface:#3a4242;--ink:#fff;--muted:#5b6167;--border:#000;--primary:#1c7c7d;--primary-strong:#0f5d5e;--button-bg:#757575;--button-bg-hover:#413d3a;--accent:#d97706;--danger:#b42318;--shadow:0 12px 24px -18px #0006}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;font-size:clamp(.98rem,.65vw + .82rem,1.08rem);line-height:1.6}body,body *{color:var(--ink)!important}.hero-opportunities,.hero-opportunities strong{color:#ff6b6b!important}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}#site-nav{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}#site-nav>div{justify-content:space-between;align-items:center;gap:1rem;max-width:72rem;margin:0 auto;padding:.75rem 1rem;display:flex}#site-nav a{font-weight:600}#site-nav a[aria-current=page]{color:var(--accent);font-weight:700}#site-nav #menu{align-items:center;gap:1rem;display:flex}#auth-slot a,#auth-slot button{border:1px solid var(--primary);color:var(--primary);background:0 0;border-radius:999px;padding:.4rem 1.1rem;font-weight:600}#auth-slot a:hover,#auth-slot button:hover{background:var(--primary);color:#fff;text-decoration:none}#site-nav #menu-btn{border:1px solid var(--border);background:0 0;border-radius:8px;padding:.35rem .6rem;display:none}#site-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:3rem}#site-footer>div{max-width:72rem;color:var(--muted);margin:0 auto;padding:2rem 1rem;font-size:.95rem}#site-footer>div>div{flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;display:flex}main{max-width:72rem;margin:0 auto;padding:2.5rem 1rem}h1,h2,h3{margin:0 0 .75rem;font-family:Playfair Display,Georgia,serif}h1{font-size:clamp(2.15rem,3.2vw,3.35rem)}h2{font-size:clamp(1.35rem,2vw,2.25rem)}h3{font-size:clamp(1.05rem,1.1vw,1.25rem)}section{margin-bottom:2rem}article{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;padding:clamp(1.25rem,1.1vw + 1rem,2rem)}form{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;gap:.75rem;padding:1.25rem;display:grid}input,textarea,select{border:1px solid var(--border);background:#fffdfb;border-radius:10px;width:100%;padding:.65rem .75rem;font-family:inherit;font-size:1rem;color:#0b0b0b!important}input::placeholder,textarea::placeholder{color:#0b0b0b99!important}button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:.6rem 1.4rem;font-weight:600;transition:transform .2s,background .2s}button:hover{background:var(--primary-strong);transform:translateY(-1px)}button:disabled{opacity:.6;cursor:not-allowed}.button-link{color:#fff;cursor:pointer;background:#0f2f2f;border:none;border-radius:999px;justify-content:center;align-items:center;width:100%;min-height:3.15rem;padding:.8rem 1.4rem;font-weight:600;text-decoration:none;transition:transform .2s,background .2s;display:flex}.button-link:hover{color:#fff;background:#071e1e;text-decoration:none;transform:translateY(-1px)}.button-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#notice{border:1px solid var(--border);border-radius:12px;margin-top:1rem;padding:.75rem 1rem;font-size:.95rem;display:none}#notice.is-visible{display:block}#notice[data-type=error]{color:var(--danger);background:#fff1ee;border-color:#f3c1b5}#notice[data-type=success]{color:#0f5132;background:#eefaf1;border-color:#cbe7d5}body[data-page=home] main{max-width:none;padding:0}body[data-page=home] main section:first-of-type{color:#fff;background:linear-gradient(135deg,#3a4242,#131d1d);padding:clamp(3.5rem,6vw,6.5rem) 1rem}body[data-page=home] main section:first-of-type>div{max-width:min(96rem,100vw - 2rem);margin:0 auto}.hero-layout{justify-content:space-between;align-items:flex-start;gap:clamp(1.5rem,3vw,3.5rem);display:flex}.hero-layout>div{flex-direction:column;flex:auto;justify-content:flex-start;gap:.25rem;display:flex}.hero-layout h1{font-size:clamp(2.35rem,4vw,4.15rem)}.hero-layout p{max-width:62ch;font-size:clamp(1.02rem,1vw + .78rem,1.18rem)}.hero-photo{object-fit:cover;width:clamp(220px,22vw,360px);height:auto;box-shadow:var(--shadow);background:#ffffff14;border:1px solid #ffffff2e;border-radius:24px;flex:0 0 clamp(220px,22vw,360px);align-self:stretch;margin-left:auto}.hero-socials{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.social-link{width:3rem;height:3rem;color:var(--ink);background:#ffffffeb;border:1px solid #ffffff73;border-radius:999px;justify-content:center;align-items:center;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.social-link:hover{background:#fff;text-decoration:none;transform:translateY(-1px)}.social-link svg,.social-link img.social-icon{width:1.35rem;height:1.35rem;display:block}.social-link img.social-icon{object-fit:contain}body[data-page=home] main section:nth-of-type(2){grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(1rem,1.5vw,1.5rem);max-width:min(96rem,100vw - 2rem);margin:0 auto;padding:clamp(2rem,4vw,4rem) 1rem 1rem;display:grid}body[data-page=home] main section:nth-of-type(2) article{box-shadow:none}body[data-page=home] main section:nth-of-type(3){max-width:min(96rem,100vw - 2rem);margin:0 auto;padding:0 1rem clamp(2.5rem,4vw,5rem)}body[data-page=home] main section:nth-of-type(3) article{box-shadow:none}body[data-page=blogs] main,body[data-page=projects] main,body[data-page=post] main,body[data-page=dashboard] main,body[data-page=admin] main{max-width:64rem}body[data-page=blogs] main>div:last-of-type{gap:.75rem;margin-top:1rem;display:flex}#post-list{gap:1rem;display:grid}#post-list article{box-shadow:none}#post-list h3{margin-bottom:.25rem}#post-list p{color:var(--muted);font-size:.95rem}#post-list a:hover{text-decoration:underline}#search{margin-bottom:1rem}#prev-page,#next-page,#load-more-comments,#like-btn{color:var(--primary);border:1px solid var(--primary);background:0 0}#prev-page:hover,#next-page:hover,#load-more-comments:hover,#like-btn:hover{background:var(--primary);color:#fff}#post{box-shadow:none}#meta{color:var(--muted);font-size:.95rem}#content,#content h2,#content h3{margin-top:1.5rem}#comments{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}#comments li{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.75rem 1rem}body[data-page=projects] #projects-grid,body[data-page=home] #home-projects-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(1rem,1.2vw,1.25rem);display:grid}body[data-page=projects] #projects-grid a,body[data-page=projects] #projects-grid article,body[data-page=home] #home-projects-grid a,body[data-page=home] #home-projects-grid article{background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:14px;gap:.75rem;text-decoration:none;display:grid;overflow:hidden}body[data-page=projects] #projects-grid a:hover,body[data-page=projects] #projects-grid article:hover,body[data-page=home] #home-projects-grid a:hover,body[data-page=home] #home-projects-grid article:hover{box-shadow:var(--shadow)}body[data-page=projects] #projects-grid img,body[data-page=home] #home-projects-grid img{object-fit:cover;width:100%;height:180px}body[data-page=projects] #projects-grid div,body[data-page=home] #home-projects-grid div{padding:0 1rem 1rem;font-weight:600}body[data-page=projects] #projects-grid div strong,body[data-page=home] #home-projects-grid div strong{margin-bottom:.35rem;font-weight:600;display:block}body[data-page=projects] #projects-grid div p,body[data-page=home] #home-projects-grid div p{color:var(--muted);margin:0;font-size:.95rem;font-weight:400}body[data-page=admin] main>div{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}body[data-page=admin] ul,body[data-page=dashboard] ul{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}body[data-page=admin] li,body[data-page=dashboard] li{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:.75rem 1rem}body[data-page=admin] li{justify-content:space-between;align-items:center;gap:1rem;display:flex}body[data-page=dashboard] li[data-unread=true]{background:#fff7df}body[data-page=dashboard] li a{color:var(--primary);font-weight:600}body[data-page=dashboard] main{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}body[data-page=admin] button[data-type]{color:var(--danger);background:0 0;border:1px solid #f3c1b5;padding:.35rem .8rem}body[data-page=admin] button[data-type]:hover{background:#fbe9e7}body[data-page=login] main,body[data-page=register] main,body[data-page=reset] main{max-width:28rem}body[data-page=login] main a,body[data-page=register] main a,body[data-page=reset] main a{font-size:.95rem}body[data-page=privacy] main,body[data-page=terms] main{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:2rem}@media (width<=768px){#site-nav #menu{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:flex-start;padding:1rem;display:none;position:absolute;top:64px;right:1rem}#site-nav #menu[data-collapsed=false]{display:flex}#site-nav #menu-btn{display:inline-flex}body[data-page=home] main section:nth-of-type(2){grid-template-columns:1fr}.hero-layout{flex-direction:column;align-items:flex-start}.hero-photo{aspect-ratio:1;align-self:flex-end;width:min(100%,280px);max-width:280px;height:auto;margin-left:auto}.hero-socials{margin-top:1.25rem}}@media (width>=769px){#site-nav #menu{display:flex;position:static}}@media (width>=1100px){body[data-page=home] main section:first-of-type>div,body[data-page=home] main section:nth-of-type(2),body[data-page=home] main section:nth-of-type(3){max-width:min(96rem,100vw - 4rem)}.hero-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);align-items:stretch;display:grid}.hero-layout>div{padding-right:1rem}.hero-photo{object-position:center top;place-self:stretch end}body[data-page=home] main section:nth-of-type(2){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1500px){body[data-page=home] main section:first-of-type,body[data-page=home] main section:nth-of-type(2),body[data-page=home] main section:nth-of-type(3){padding-left:2rem;padding-right:2rem}body[data-page=home] main section:nth-of-type(2){gap:1.5rem}.hero-layout h1{font-size:clamp(2.8rem,3.6vw,4.6rem)}.hero-layout p{font-size:clamp(1.08rem,.9vw + .8rem,1.25rem)}}
