/* A quieter typographic identity, shared by portfolio and print pages. */
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url("/wp-content/themes/francesco-fineart/fonts/manrope-variable.ttf") format('truetype')}
:root{--accent:#d5c5a8;--orange:#cbbb9f}
body{font-family:Manrope,"Segoe UI",sans-serif}
h1,h2,h3,h4,.brand,.award-list strong,.photo-number{font-family:Manrope,"Segoe UI",sans-serif}
h1,h2,h3{font-weight:450;letter-spacing:-.035em}
.hero h1{font-weight:450;letter-spacing:-.045em;line-height:1.12}
.brand{font-weight:650;letter-spacing:-.025em;font-size:21px}
.brand small{font-family:Manrope,sans-serif;font-size:10px;font-weight:450;letter-spacing:.22em}
.button,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
 font-family:Manrope,sans-serif!important;background:rgba(16,18,23,.3)!important;color:#eee9df!important;
 border:1px solid #a99b84!important;border-radius:3px!important;box-shadow:none!important;
 font-weight:500!important;letter-spacing:.025em;padding:13px 23px!important;
 transition:background .2s,border-color .2s,color .2s;
}
.button-secondary{border-color:#696a6b!important;color:#d2d1cf!important;background:transparent!important}
.button:hover,.wp-element-button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{
 background:#d5c5a8!important;color:#141413!important;border-color:#d5c5a8!important;box-shadow:none!important;
}
.button:focus-visible,.wp-element-button:focus-visible{outline:2px solid #e2d7c4;outline-offset:5px}
.header-inner{gap:18px}
.menu{gap:3px;font-size:15px;font-weight:450}
.menu a,.menu .current-menu-item a{font-size:15px;line-height:1.5;padding:10px 8px;border-radius:0;background:transparent;border:0;border-bottom:1px solid transparent;color:#c3c2bf}
.menu a:hover{background:transparent;border-color:#817768;color:#f2e9d9}
.menu .current-menu-item a{background:transparent;border-color:#cbbb9f;color:#ede3d1}
.language-switch{background:transparent;border-color:#55524c;border-radius:3px;padding:3px}
.language-switch a{font-family:Manrope,sans-serif;border-radius:1px;color:#b9b6b0}
.language-switch a[aria-current="true"]{background:#cbbb9f1c;color:#eee3ce}
.language-switch a:hover{background:#cbbb9f15;color:#fff}
.project-meta span:last-child,.landscape-heading h1 span,.about-intro .gradient-text{color:#d2c1a3}
.project:hover{border-color:#807563}
.contact-card:hover{border-color:#a99b84;background:#1c1e22}
.contact-card:focus-visible,.nights-story>summary:focus-visible{outline-color:#d5c5a8}
.viewer-close,.viewer-caption{font-family:Manrope,sans-serif}
.viewer-prev,.viewer-next,.viewer-close{background:#17191d;border-color:#676159;border-radius:3px}
.viewer-prev:hover,.viewer-next:hover,.viewer-close:hover{background:#302d28}
::selection{background:#786c59;color:#fff}
.footer-inner{align-items:center}
.footer-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.footer-links>a{display:inline-flex;align-items:center;min-height:44px}
.footer-instagram{gap:9px;color:#c8baa2}
.footer-instagram svg{flex-shrink:0}
.footer-links a:hover{color:#f2e9d9}
.nights-story,.nights-story:not([open]){padding:30px 0 34px;margin-bottom:50px}
.nights-story>summary.story-summary{display:block;list-style:none;padding:0;color:inherit}
.story-summary::-webkit-details-marker{display:none}
.story-summary h2{margin:10px 0 18px}
.story-excerpt{display:block;max-width:850px;color:#bbc0c8;font-size:16px;line-height:1.85}
.story-toggle{display:block;color:#d5c5a8;margin-top:16px;font-size:13px;font-weight:500}
.story-toggle span[aria-hidden]{display:inline-block;margin-right:7px}
.story-hide{display:none}
.nights-story[open] .story-show,.nights-story[open] .story-excerpt{display:none}
.nights-story[open] .story-hide{display:inline}
.nights-story[open] .story-toggle{margin:0 0 24px}
.story-summary:hover .story-toggle{color:#f4e7cd;text-decoration:underline;text-underline-offset:5px}
.mobile-menu-toggle,.mobile-menu-toggle[hidden]{display:none}
.mobile-navigation{position:fixed;inset:0 auto 0 0;margin:0;width:min(86vw,360px);height:100dvh;max-height:100dvh;max-width:none;padding:24px;border:0;border-right:1px solid #595044;background:#101216;color:#eee9df;box-sizing:border-box;overflow-y:auto}
.mobile-navigation:not([open]){display:none}
.mobile-navigation[open]{display:flex;flex-direction:column;animation:menu-enter .25s ease-out}
.mobile-navigation::backdrop{background:#0009;backdrop-filter:blur(3px)}
.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid #35332f;font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:#c8baa2}
.mobile-menu-close,.mobile-menu-toggle{background:transparent;border:1px solid #696056;border-radius:3px;color:#eee3d1;min-width:44px;min-height:44px;cursor:pointer}
.mobile-menu-close{font:30px/1 Manrope,sans-serif}
.mobile-navigation nav{padding:22px 0}
.mobile-navigation .menu{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:auto;margin:0}
.mobile-navigation .menu a,.mobile-navigation .menu .current-menu-item a{font-size:17px;padding:13px 0;min-height:48px;white-space:normal}
.mobile-menu-bottom{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding-top:30px}
.mobile-menu-bottom .language-switch{position:static;align-self:flex-start}
.mobile-instagram{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#c8baa2;font-size:13px;text-decoration:none}
body.mobile-menu-open{overflow:hidden}
@keyframes menu-enter{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@media(max-width:700px){
 .mobile-menu-ready .header-inner{display:grid;grid-template-columns:44px minmax(0,1fr);gap:17px;align-items:center;padding:17px 0;min-height:82px}
 .mobile-menu-ready .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;padding:0}
 .mobile-menu-ready .header-inner>.brand{padding:0;font-size:19px;white-space:normal}
 .mobile-menu-ready .header-inner>.brand small{font-size:9px}
 .mobile-menu-ready .header-inner>nav,.mobile-menu-ready .header-inner>.language-switch{display:none}
}
@media(prefers-reduced-motion:reduce){.mobile-navigation[open]{animation:none}}
@media(max-width:1100px){.header-inner{gap:18px}}
@media(min-width:701px) and (max-width:1400px){.header-inner{flex-direction:column;align-items:flex-start;padding:20px 0;gap:15px}.header-inner>.language-switch{position:absolute;right:0;top:20px}.header-inner>.brand{padding-right:90px}.header-inner>nav{width:100%}}
@media(max-width:700px){.menu a,.menu .current-menu-item a{font-size:14px;min-height:44px;padding:10px 9px}.menu{gap:3px 7px}.hero h1{letter-spacing:-.04em}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
