/* Shared navigation and project pages. The personal homepage remains the base. */
.skip{z-index:30}
.breadcrumb{display:block;margin:0 0 26px;line-height:1.6}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:4px 9px;list-style:none;padding:0;margin:0}.breadcrumb li{display:flex;align-items:baseline;gap:9px}.breadcrumb a{color:var(--link);text-decoration:underline;text-underline-offset:3px}.breadcrumb a:hover{color:#f4d49d}.breadcrumb [aria-current="page"],.breadcrumb-separator{color:var(--muted)}
html{scroll-padding-top:110px;scroll-behavior:auto}.topbar{position:sticky;top:0;z-index:20;min-height:76px;background:#172029;border-bottom:1px solid var(--line);display:flex;gap:40px;align-items:center;padding:15px max(32px,calc((100vw - 1320px)/2));font-size:15px}.site-brand{font-family:Georgia,serif;font-size:25px;letter-spacing:-.5px;color:#f1e9d9;text-decoration:none;white-space:nowrap}.site-brand span{font-family:var(--font);font-size:15px;letter-spacing:0;color:var(--muted);margin-left:3px}.topbar .site-links,.topbar .app-links{display:flex;flex-direction:row;align-items:center;gap:26px;margin:0}.site-links>a,.app-links>a{white-space:nowrap;text-decoration:none}.topbar a[aria-current],.current-section{color:var(--link);text-decoration:underline;text-underline-offset:7px}.topbar .app-links{margin-left:auto;border-left:1px solid var(--line);padding-left:26px;gap:22px;font-size:14px}.topbar .app-links a{color:var(--link)}.projects-menu{position:relative}.projects-menu summary{cursor:pointer;list-style:none;white-space:nowrap}.projects-menu summary::after{content:'⌄';font-size:13px;margin-left:7px;color:var(--muted)}summary::-webkit-details-marker{display:none}.project-dropdown{position:absolute;left:-18px;top:36px;min-width:225px;background:#202b34;border:1px solid #4c555b;padding:10px;display:flex;flex-direction:column;gap:2px;box-shadow:0 8px 22px #0003}.project-dropdown>a{padding:9px 12px;font-size:15px;text-decoration:none}.project-dropdown>a:hover{background:#2b3740}.topbar .mobile-menu{display:none}.topbar summary:focus-visible{outline:2px solid var(--link);outline-offset:6px}.page{padding-top:42px}.sidebar{top:112px;max-height:calc(100vh - 145px);overflow-y:auto;padding-bottom:10px;scrollbar-width:thin}.sidebar .identity{font-size:24px;line-height:1.2;font-weight:600;color:#efe8d8;letter-spacing:-.4px}.sidebar .sidebar-note{font-size:15px;margin-top:13px}.sidebar .portrait{width:136px;height:147px;margin-bottom:21px}.project-picture{max-width:160px;max-height:135px;object-fit:contain;margin-bottom:22px}.sidebar .project-facts{margin:20px 0 0;font-size:13px}.project-facts div{margin:11px 0}.project-facts dt{color:var(--muted);font-size:12px}.project-facts dd{margin:2px 0 0}.sidebar nav{margin-top:28px;gap:10px;font-size:14px}.sidebar nav:empty{display:none}.sidebar .write{font-size:15px;margin-top:26px}.page-intro{max-width:720px;font-size:19px;line-height:1.65}.page-intro:empty{display:none}.page-intro p+p{margin-top:19px}.page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin:25px 0 18px;font-size:16px}.action-link{border:1px solid #8d8065;padding:9px 17px;display:inline-block;text-decoration:none}.action-link:hover{background:#29333c}.access-note{font-size:14px;color:var(--muted);max-width:700px;line-height:1.6}.page-figure{margin:31px 0}.page-figure img{width:100%;height:auto}.page-figure a{display:block}.page-figure figcaption{font-size:13px;max-width:800px}.reading-section{margin-top:51px;scroll-margin-top:110px}.reading-section>p{max-width:720px}.reading-section h2{max-width:750px;font-size:29px}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.image-pair .page-figure{margin-top:12px}.project-row{display:grid;grid-template-columns:270px 1fr;gap:34px;padding:33px 0;border-bottom:1px solid var(--line);align-items:center}.project-row h2{font-size:29px;margin-bottom:13px}.project-row h2 a{color:var(--text);text-decoration:none}.project-row p{font-size:17px}.project-row .status{font-size:14px}.project-row .inline-link{margin-top:12px}.project-thumbnail img{width:100%;height:162px;object-fit:cover}.project-thumbnail{display:block;text-decoration:none}.project-wordmark{font-size:34px;line-height:1.15;font-family:Georgia,serif;color:var(--link);display:block;padding:22px 0}.project-row:last-child{border-bottom:0}.hub-sketch{max-width:570px;margin:30px 0}.hub-sketch svg{width:100%;height:auto;display:block}.hub-sketch figcaption{font-size:13px;max-width:520px}.editorial-list{margin:27px 0}.editorial-list>div{border-top:1px solid var(--line);padding:18px 0;display:grid;grid-template-columns:1fr 1fr;gap:28px}.editorial-list dt{font-weight:600;color:#eee5d4}.editorial-list dd{margin:0;font-size:17px}.plain-list{padding-left:23px}.plain-list li{padding:5px 0}.topics{display:grid;grid-template-columns:1fr 1fr;gap:9px 35px;padding-left:20px;max-width:720px;font-size:17px}.offer{display:grid;grid-template-columns:250px 1fr;gap:35px;border-top:1px solid var(--line);padding:27px 0}.offer:first-of-type{margin-top:27px}.offer h3{font-size:25px}.offer-price{font-size:32px;color:var(--link);margin-top:16px;line-height:1.3}.offer-price span{display:block;font-size:15px;color:var(--muted);margin-top:6px}.offer p:not(.offer-price){font-size:17px}.offer .inline-link{margin-top:20px}.personal-quote{margin:27px 0;border-left:2px solid var(--link);padding:3px 0 3px 22px;max-width:650px;color:#ebd8b4;font-size:22px;line-height:1.5}.questions{max-width:770px}.questions details{border-bottom:1px solid var(--line)}.questions summary{cursor:pointer;font-size:17px;padding:17px 35px 17px 0;list-style:none;position:relative}.questions summary::after{content:'+';position:absolute;right:8px;color:var(--link)}.questions details[open]>summary::after{content:'−'}.questions details>p{font-size:17px;padding:0 24px 22px 0;margin:0}.questions summary:focus-visible{outline:2px solid var(--link);outline-offset:3px}.contact-address{font-size:25px;overflow-wrap:anywhere}.contact-topics{padding-left:20px}.contact-topics li{margin:12px 0}.site-footer{margin-top:60px;align-items:center}.site-footer a{font-size:13px}.site-footer span:last-child{margin-left:auto}.page-mentions-legales .reading-section{max-width:730px}.page-mentions-legales ul{padding-left:22px}.page-mentions-legales li{margin:7px 0}.page .opening-note{font-size:14px}.page h1{max-width:850px}
@media(min-width:1350px){.topbar{gap:50px}}
@media(max-width:1100px){.topbar{gap:25px;padding-inline:28px}.topbar .site-links{gap:19px}.topbar .app-links{gap:15px;padding-left:18px;font-size:13px}.site-brand{font-size:23px}.project-row{grid-template-columns:220px 1fr;gap:26px}.offer{grid-template-columns:205px 1fr;gap:28px}}
@media(max-width:960px){.topbar .site-links,.topbar .app-links{display:none}.topbar{min-height:70px;padding:16px 28px;justify-content:space-between}.topbar .mobile-menu{display:block}.mobile-menu summary{cursor:pointer;list-style:none;border:1px solid var(--line);padding:5px 14px;font-size:15px}.mobile-menu summary::after{content:' ☰';margin-left:9px}.mobile-menu[open] summary::after{content:' ×'}.mobile-menu nav{position:absolute;left:0;right:0;top:100%;margin:0;background:#202b34;padding:20px 28px;max-height:calc(100dvh - 82px);overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;border-bottom:1px solid #55616a}.mobile-menu nav a{font-size:16px}.mobile-label{grid-column:1/-1;color:var(--muted);font-size:13px;border-top:1px solid var(--line);padding-top:14px;margin-top:5px}.sidebar{top:99px;max-height:calc(100vh - 120px)}.page-actions{font-size:15px}.project-row{grid-template-columns:180px 1fr;gap:24px}.project-thumbnail img{height:125px}.offer{grid-template-columns:1fr;gap:15px}.offer-price span{display:inline;margin-left:10px}.image-pair{grid-template-columns:1fr}.editorial-list>div{grid-template-columns:1fr;gap:9px}}
@media(max-width:650px){.topbar{padding-inline:23px;min-height:65px}.site-brand span{display:inline;margin-left:5px}.page{padding-top:26px}.sidebar{position:static;max-height:none;overflow:visible;display:grid;grid-template-columns:1fr auto;padding-bottom:24px;gap:0 20px}.sidebar .identity{font-size:24px;grid-column:1;grid-row:1;align-self:center}.sidebar .portrait,.sidebar .project-picture{grid-column:2;grid-row:1/3;width:68px;height:76px;object-fit:cover;margin:0}.sidebar .project-picture{object-fit:contain}.sidebar .sidebar-note{display:block;grid-column:1;font-size:14px;margin-top:9px}.sidebar .project-facts{display:flex;flex-wrap:wrap;gap:5px 22px;grid-column:1/-1;margin-top:16px}.project-facts div{margin:0}.sidebar nav{grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px 20px;margin-top:19px;font-size:14px}.sidebar .write{grid-column:1/-1;margin-top:18px;font-size:15px}.page h1{font-size:35px;line-height:1.15}.page-intro{font-size:18px}.page .opening-note{font-size:13px}.page-actions{gap:16px 22px}.page-figure{margin:25px 0}.page-figure figcaption{font-size:12px}.reading-section{margin-top:37px;scroll-margin-top:92px}.reading-section h2{font-size:26px}.project-row{display:block;padding:27px 0}.project-thumbnail{margin-bottom:20px}.project-thumbnail img{height:auto;max-height:250px;object-fit:contain}.project-row h2{font-size:27px}.project-row p{font-size:17px}.project-wordmark{padding:5px 0}.topics{font-size:15px;gap:10px 23px}.offer{gap:15px;padding:23px 0}.offer h3{font-size:24px}.offer-price{font-size:30px;margin-top:10px}.offer-price span{display:block;margin:5px 0 0}.offer .inline-link{font-size:15px}.personal-quote{font-size:20px}.questions summary,.questions details>p{font-size:16px}.contact-address{font-size:22px}.site-footer{gap:14px 20px;margin-top:42px}.site-footer span:last-child{margin-left:0;width:100%}.page-index .sidebar .sidebar-note{display:none}.page-index .sidebar .identity{font-size:22px}}
