/* Round 11: theme, responsive navigation, branding, contact, footer, admin */
:root{--r11-bg:#FAFAF7;--r11-fg:#333638;--r11-gold:#A38C6A;--r11-line:#C8C6C0;--r11-panel:#FAFAF7}
html[data-theme="dark"]{--r11-bg:#141516;--r11-fg:#e9e5dc;--r11-gold:#c6a676;--r11-line:#504b43;--r11-panel:#1d1e20;--r10-bg:#141516;--r10-text:#e9e5dc;--r10-gold:#c6a676;--r10-line:#504b43}
body:not(.admin-page){background:var(--r11-bg)!important;color:var(--r11-fg)!important}
body:not(.admin-page) header,body:not(.admin-page) footer,body:not(.admin-page) .contact-menu{background:var(--r11-bg)!important;color:var(--r11-fg)!important;border-color:var(--r11-line)!important}
body:not(.admin-page) main,body:not(.admin-page) section:not(.hero),body:not(.admin-page) .detail,body:not(.admin-page) .filters,body:not(.admin-page) .project-extra{background-color:var(--r11-bg);color:var(--r11-fg)}
body:not(.admin-page) h1:not(.hero h1),body:not(.admin-page) h2:not(.hero h2),body:not(.admin-page) h3,body:not(.admin-page) p:not(.hero p),body:not(.admin-page) .muted,body:not(.admin-page) .eyebrow,body:not(.admin-page) .metaitem,body:not(.admin-page) .gallery-count,body:not(.admin-page) .filter,body:not(.admin-page) .footer-right,body:not(.admin-page) .footer-signature,body:not(.admin-page) .contact-menu a{color:var(--r11-fg)}
body:not(.admin-page) header a,body:not(.admin-page) header button,body:not(.admin-page) footer a,body:not(.admin-page) footer span{color:var(--r11-fg)!important}
body:not(.admin-page) .project,body:not(.admin-page) .project-info{background:var(--r11-panel)!important;color:var(--r11-fg)!important;border-color:var(--r11-line)!important}
body:not(.admin-page) .project h3,body:not(.admin-page) .project-info h3{color:var(--r11-fg)!important}
body:not(.admin-page) .project-info small{color:var(--r11-gold)!important}
body:not(.admin-page) .inquiry input,body:not(.admin-page) .inquiry select,body:not(.admin-page) .inquiry textarea{background:var(--r11-bg)!important;color:var(--r11-fg)!important;border:1px solid var(--r11-line)!important;border-radius:2px;outline:none}
body:not(.admin-page) .inquiry input::placeholder,body:not(.admin-page) .inquiry textarea::placeholder{color:color-mix(in srgb,var(--r11-fg) 65%,transparent)!important}
body:not(.admin-page) .inquiry input:focus,body:not(.admin-page) .inquiry select:focus,body:not(.admin-page) .inquiry textarea:focus{border-color:var(--r11-gold)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--r11-gold) 18%,transparent)}
body:not(.admin-page) .inquiry label{color:var(--r11-fg)!important}
body:not(.admin-page) .inquiry option{background:var(--r11-panel);color:var(--r11-fg)}
body:not(.admin-page) .hero,body:not(.admin-page) .hero *{color:white}
body:not(.admin-page) .hero .eyebrow{color:#e4d4b4}
.r11-switchers{display:flex;flex-direction:column;gap:3px;align-items:center;flex-shrink:0;margin-inline-start:10px;z-index:55}
.r11-switch{background:transparent;border:1px solid var(--r11-line);color:var(--r11-fg);font-size:10px;font-weight:600;letter-spacing:.03em;width:32px;height:27px;border-radius:4px;cursor:pointer;display:grid;place-items:center;padding:0}
.r11-switch:hover,.r11-switch:focus-visible{border-color:var(--r11-gold);color:var(--r11-gold)}
.r11-sketch{display:block!important;position:relative;flex:0 0 100%;width:100vw!important;max-width:none;height:clamp(140px,28vw,330px)!important;margin:40px 0 0 calc(50% - 50vw)!important;background-image:url('architectural-sketch.jpg')!important;background-size:100% auto!important;background-position:center bottom!important;background-repeat:no-repeat!important;opacity:.55!important;mask-image:none!important;pointer-events:none}
footer{overflow:hidden}
.r11-top{position:fixed;bottom:24px;right:24px;z-index:9999;background:var(--r11-panel);color:var(--r11-fg);border:1px solid var(--r11-gold);border-radius:50%;width:47px;height:47px;font-size:25px;cursor:pointer;box-shadow:0 5px 22px #0002;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s,visibility .25s}
.r11-top.show{opacity:1;visibility:visible;transform:none}
body:not(.admin-page) .back-to-top,body:not(.admin-page) .r9-top,body:not(.admin-page) #backToTop{display:none!important}
.r11-header-logo{display:block;max-width:clamp(120px,17vw,245px);max-height:70px;width:auto;height:auto;object-fit:contain}
.r11-footer-logo{max-width:min(650px,85vw);max-height:220px;width:auto;height:auto;object-fit:contain}
.r11-logo-preview{display:block;max-width:250px;max-height:90px;object-fit:contain;margin:8px 0;background:#eae8e2;border:1px solid #c8c6c0}
.admin-page{--r11-bg:#FAFAF7;--r11-fg:#333638;--r11-panel:#fff;--r11-line:#C8C6C0;background:var(--r11-bg)!important;color:var(--r11-fg)!important}
html[data-admin-theme="dark"] .admin-page{--r11-bg:#151617;--r11-fg:#e9e5dc;--r11-panel:#202124;--r11-line:#494b4e}
.admin-page header,.admin-page .panel,.admin-page .extra-panel,.admin-page .notice{background:var(--r11-panel)!important;color:var(--r11-fg)!important;border-color:var(--r11-line)!important}
.admin-page h1,.admin-page h2,.admin-page h3,.admin-page p,.admin-page label,.admin-page .muted,.admin-page .field label,.admin-page header a,.admin-page .adminitem span{color:var(--r11-fg)!important}
.admin-page .field input:not([type=checkbox]):not([type=range]):not([type=file]),.admin-page .field textarea,.admin-page .field select,.admin-page input[type=email],.admin-page input[type=password]{background:var(--r11-panel)!important;color:var(--r11-fg)!important;border:1px solid var(--r11-line)!important}
.admin-page input[type=checkbox]{accent-color:var(--r11-gold)}
.admin-page .adminitem,.admin-page .feature-toggle{border-color:var(--r11-line)!important}
.admin-page .btn{border-color:var(--r11-gold)}
.admin-page .r11-switchers{margin-left:auto}
html[dir="rtl"] .r11-switchers{margin-inline-start:10px}
@media(max-width:700px){body:not(.admin-page) header{display:flex!important;align-items:center;gap:7px;padding:12px 3%!important;min-height:80px}body:not(.admin-page) .mobile-menu-btn{display:none!important}body:not(.admin-page) header nav#mainNav,body:not(.admin-page) header nav#mainNav.open{display:flex!important;position:static!important;min-height:0!important;box-shadow:none!important;background:transparent!important;border:0!important;padding:0!important;flex-direction:row!important;align-items:center!important;gap:clamp(5px,1.4vw,12px)!important;margin-left:auto;flex-wrap:nowrap!important}body:not(.admin-page) header nav#mainNav a,body:not(.admin-page) header nav#mainNav button{font-size:clamp(8px,1.8vw,11px)!important;letter-spacing:0!important;white-space:nowrap!important}body:not(.admin-page) header .brand{min-width:0!important;flex:0 1 auto}body:not(.admin-page) .r11-header-logo{max-width:clamp(85px,23vw,150px);max-height:53px}body:not(.admin-page) header .brand:not(:has(img)){font-size:clamp(12px,3vw,18px)!important;letter-spacing:.08em!important}body:not(.admin-page) header .brand small{font-size:clamp(5px,1.1vw,8px)!important;letter-spacing:0!important}body:not(.admin-page) .r11-switchers{margin-left:2px;gap:2px}body:not(.admin-page) .r11-switch{width:27px;height:25px;font-size:9px}body:not(.admin-page) .nav-contact .contact-menu{position:absolute!important;right:0!important;left:auto!important;top:100%!important;min-width:160px;z-index:9999}footer .r11-sketch{height:140px!important}}
@media(max-width:380px){body:not(.admin-page) header{gap:3px;padding:10px 2%!important}body:not(.admin-page) .r11-header-logo{max-width:82px}body:not(.admin-page) header nav#mainNav{gap:4px!important}}

/* Restore dark palette to legacy components when dark mode is selected. */
html[data-theme="dark"] body:not(.admin-page){--bg:#141516;--panel:#1d1e20;--white:#e9e5dc;--muted:#b5b0a7;--gold:#c6a676;--line:#504b43}
html[data-theme="dark"] body:not(.admin-page) .project-info{background:#1d1e20!important}
html[data-theme="dark"] body:not(.admin-page) .filter,html[data-theme="dark"] body:not(.admin-page) .btn{color:#e9e5dc!important;border-color:#504b43}
html[data-admin-theme="light"] .admin-page{--bg:#FAFAF7;--panel:#fff;--white:#333638;--muted:#777670;--gold:#A38C6A;--line:#C8C6C0}
html[data-admin-theme="dark"] .admin-page{--bg:#151617;--panel:#202124;--white:#e9e5dc;--muted:#b6b0a5;--gold:#c6a676;--line:#494b4e}
