/* Completely self-contained Atelier Pergold Studio theme: no remote assets, no legacy code. */
html body.aps-site{--aps-bg:#141a16;--aps-surface:#222b23;--aps-panel:#2c382e;--aps-text:#f5ecdc;--aps-muted:#d2c5ac;--aps-accent:#d6bb87;--aps-border:#776f58;--aps-heading-font:Georgia,serif;--aps-overlay:.35;margin:0!important;background:var(--aps-bg)!important;color:var(--aps-text)!important;font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh;min-height:100svh}
.aps-site *, .aps-site *:before, .aps-site *:after{box-sizing:border-box}
.aps-site .aps-wrap{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse 125% 66% at 50% -20%,var(--aps-panel),var(--aps-bg) 76%);overflow-wrap:anywhere}
.aps-site h1,.aps-site h2,.aps-site h3,.aps-site p{margin-top:0}.aps-site h1,.aps-site h2,.aps-site h3{color:var(--aps-text)!important;font-family:var(--aps-heading-font);font-weight:400;letter-spacing:-.028em;line-height:1.17}
.aps-site a,.aps-site a:visited{color:var(--aps-accent)}.aps-site a:hover{text-decoration:underline}.aps-site a:focus-visible{outline:3px solid var(--aps-accent);outline-offset:3px}
.aps-site .aps-skip{position:absolute;top:-60px;left:15px;z-index:10000;background:var(--aps-bg);padding:10px}.aps-site .aps-skip:focus{top:10px}
.aps-site .aps-top{min-height:76px;padding:15px clamp(20px,4.4vw,75px);border-bottom:1px solid var(--aps-border);display:flex;justify-content:space-between;align-items:center;gap:25px}
.aps-site .aps-brand{font:italic 21px var(--aps-heading-font);display:flex;gap:12px;align-items:center;text-decoration:none!important;color:var(--aps-text)!important}.aps-monogram{height:38px;width:38px;display:grid;place-items:center;border:1px solid var(--aps-accent);color:var(--aps-accent);border-radius:50%;font:11px Georgia,serif;font-style:normal;letter-spacing:-1px}
.aps-site .aps-top-links{display:flex;align-items:center;gap:clamp(15px,2vw,30px);flex-wrap:wrap}.aps-top-links a{font-size:12px;color:var(--aps-muted)!important;text-decoration:none!important}
.aps-site main{flex:1}.aps-site .aps-container{max-width:1180px;margin-inline:auto;padding-left:clamp(18px,3vw,44px);padding-right:clamp(18px,3vw,44px)}
.aps-site .aps-home-hero{text-align:center;padding:clamp(45px,7vw,90px) 0 37px}.aps-site .aps-eyebrow{color:var(--aps-accent)!important;text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:650;margin-bottom:17px}
.aps-site .aps-home-hero h1{font-size:clamp(45px,6vw,86px);margin:0 0 4px}.aps-site .aps-byline{font:italic clamp(20px,2.2vw,28px) var(--aps-heading-font);color:var(--aps-accent);margin:0 0 13px}.aps-site .aps-motto{font-size:clamp(17px,2vw,23px);letter-spacing:.12em;color:var(--aps-text);margin:0}
.aps-site .aps-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.aps-site .aps-entry{position:relative;isolation:isolate;min-height:355px;padding:clamp(25px,3vw,38px);display:flex;flex-direction:column;border:1px solid var(--aps-border);background:var(--aps-surface);box-shadow:0 18px 50px #0002;overflow:hidden}
.aps-site .aps-entry:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(125deg,var(--aps-surface),color-mix(in srgb,var(--aps-surface) 75%,transparent)),var(--aps-card-image,none);background-size:cover;background-position:center;opacity:1}.aps-site .aps-entry-work{background:var(--aps-panel)}.aps-site .aps-entry-work:before{background-image:linear-gradient(120deg,var(--aps-panel),color-mix(in srgb,var(--aps-panel) 65%,transparent)),var(--aps-card-image,none)}
.aps-site .aps-entry h2{font-size:clamp(36px,3.7vw,52px);margin:0 0 4px}.aps-site .aps-entry-subtitle{color:var(--aps-accent);font:italic clamp(20px,2.1vw,27px) var(--aps-heading-font);margin-bottom:17px}.aps-site .aps-entry p:not(.aps-eyebrow){max-width:440px}.aps-site .aps-entry .aps-facts{color:var(--aps-muted);font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:0}
.aps-site .aps-entry-actions{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.aps-site .aps-button,.aps-site a.aps-button,.aps-site a.aps-button:visited{display:inline-flex;padding:10px 18px;min-height:45px;align-items:center;justify-content:center;color:var(--aps-accent)!important;border:1px solid var(--aps-accent);background:transparent;text-decoration:none!important;font-size:13px;font-weight:700;text-align:center}.aps-site .aps-button:hover{background:var(--aps-border)}.aps-site .aps-disabled{opacity:.52;cursor:default}.aps-site .aps-link{text-decoration:none;font-size:13px;font-weight:700;display:inline-block;padding-block:5px}
.aps-site .aps-home-portfolio{display:flex;gap:30px;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--aps-border);padding:30px 0;margin-top:30px}.aps-site .aps-home-portfolio h2{font-size:clamp(30px,3vw,42px);margin-bottom:5px}.aps-site .aps-home-portfolio p:last-child{color:var(--aps-muted);font-size:14px;margin:0}.aps-site .aps-home-portfolio>a{white-space:nowrap}
.aps-site .aps-inner{max-width:1060px;padding-top:clamp(55px,7vw,90px);padding-bottom:95px}.aps-site .aps-inner-hero{padding-bottom:27px}.aps-site .aps-inner-hero h1{font-size:clamp(42px,6vw,70px);margin:0 0 13px}.aps-site .aps-inner-subtitle{font-size:clamp(21px,2.3vw,29px);color:var(--aps-accent);font-family:var(--aps-heading-font);margin-bottom:25px}.aps-site .aps-inner-hero>p:last-child{font-size:16px;max-width:790px;color:var(--aps-muted)}
.aps-site .aps-card-grid,.aps-site .aps-detail-grid,.aps-site .aps-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.aps-site .aps-project-card,.aps-site .aps-mini-project{padding:29px;border:1px solid var(--aps-border);background:var(--aps-surface);display:flex;flex-direction:column;align-items:flex-start;min-height:185px}.aps-site .aps-project-card h2{font-size:34px;margin:0 0 14px}.aps-site .aps-project-card a{margin-top:auto}.aps-site .aps-project-card p:not(.aps-eyebrow){font-size:15px;color:var(--aps-muted)}
.aps-site .aps-detail-section{border-top:1px solid var(--aps-border);padding-top:32px;margin-top:28px}.aps-site .aps-detail-section h2{font-size:clamp(28px,3.4vw,39px);margin-bottom:12px}.aps-site .aps-detail-section p{color:var(--aps-muted)}.aps-site .aps-project-grid{margin-top:24px}.aps-site .aps-mini-project{min-height:180px;padding:20px}.aps-site .aps-mini-project h3{font-size:24px;margin-bottom:10px}.aps-site .aps-mini-project p{font-size:14px;flex:1}.aps-site .aps-banner{height:235px;background-image:linear-gradient(0deg,color-mix(in srgb,var(--aps-bg) 40%,transparent),transparent),var(--aps-card-image,none);background-size:cover;background-position:center;margin:8px 0 34px;border:1px solid var(--aps-border)}
.aps-site .aps-more-links{margin-top:35px;padding-top:28px;border-top:1px solid var(--aps-border)}.aps-site .aps-more-links h2{font-size:27px}.aps-site .aps-more-links ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}.aps-site .aps-more-links li{margin:0;border:1px solid var(--aps-border);padding:8px 13px;background:var(--aps-surface)}.aps-site .aps-contact{padding-top:30px}
.aps-site .aps-legal{padding-top:55px;padding-bottom:90px;max-width:1060px}.aps-site .aps-legal h1{font-size:clamp(40px,5vw,63px)}.aps-site .aps-legal-content{color:var(--aps-text);line-height:1.8}.aps-site .aps-legal-content h2,.aps-site .aps-legal-content h3{margin-top:30px}.aps-site .aps-legal-content p,.aps-site .aps-legal-content li{color:var(--aps-muted)}
.aps-site .aps-footer{border-top:1px solid var(--aps-border);padding:23px clamp(20px,4.4vw,75px);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--aps-muted)}.aps-site .aps-footer em{color:var(--aps-accent);font-style:normal}
.aps-site .aps-wrap a:hover{opacity:.9}.aps-site #wpadminbar a{color:#eee!important}
@media(max-width:760px){.aps-site .aps-entry-grid,.aps-site .aps-card-grid,.aps-site .aps-detail-grid,.aps-site .aps-project-grid{grid-template-columns:1fr}.aps-site .aps-home-portfolio{flex-direction:column;align-items:flex-start}.aps-site .aps-entry{min-height:310px}}
@media(max-width:540px){.aps-site .aps-top{flex-direction:column;gap:12px;padding:15px}.aps-site .aps-brand{font-size:18px}.aps-site .aps-top-links{justify-content:center}.aps-site .aps-home-hero{padding:43px 0 30px}.aps-site .aps-home-hero h1{font-size:clamp(37px,10vw,54px)}.aps-site .aps-entry{padding:24px}.aps-site .aps-entry h2{font-size:37px}.aps-site .aps-inner{padding-top:45px}.aps-site .aps-inner-hero h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){.aps-site *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* V1.1: cards can be freely added, deleted and ordered in Atelier backend. */
.aps-site .aps-entry-grid--editable{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.aps-site .aps-entry-grid--editable .aps-entry{min-height:305px}
.aps-site .aps-entry-grid--editable .aps-entry h2{font-size:clamp(29px,2.8vw,43px);overflow-wrap:normal;hyphens:auto}
.aps-site .aps-entry-grid--editable .aps-entry-subtitle{font-size:clamp(18px,1.6vw,23px)}
@media(max-width:760px){.aps-site .aps-entry-grid--editable{grid-template-columns:1fr}}

/* V1.2: typography roles. Existing design is untouched until a library font is selected. */
.aps-site .aps-eyebrow,.aps-site .aps-facts{font-family:var(--aps-font-accent,inherit)}

/* V1.3 unified typography mapping. Earlier layout/colors remain unchanged.
 * Body: prose, navigation, buttons, footer. Hero: home title only.
 * Heading: all other H1-H3. Subtitle: byline, brand, subtitle, motto.
 * Accent: eyebrow / facts. Only native CSS variables are used. */
html body.aps-site .aps-wrap {font-family:var(--aps-font-body,system-ui,sans-serif)!important}
html body.aps-site .aps-wrap h1,
html body.aps-site .aps-wrap h2,
html body.aps-site .aps-wrap h3 {font-family:var(--aps-heading-font,Georgia,serif)!important}
html body.aps-site .aps-wrap .aps-home-hero h1 {font-family:var(--aps-font-hero,Georgia,serif)!important}
html body.aps-site .aps-wrap .aps-brand,
html body.aps-site .aps-wrap .aps-byline,
html body.aps-site .aps-wrap .aps-motto,
html body.aps-site .aps-wrap .aps-entry-subtitle,
html body.aps-site .aps-wrap .aps-inner-subtitle {font-family:var(--aps-font-subtitle,Georgia,serif)!important}
html body.aps-site .aps-wrap .aps-eyebrow,
html body.aps-site .aps-wrap .aps-facts,
html body.aps-site .aps-wrap .aps-monogram {font-family:var(--aps-font-accent,system-ui,sans-serif)!important}
html body.aps-site .aps-wrap .aps-top-links,
html body.aps-site .aps-wrap .aps-entry p:not(.aps-eyebrow):not(.aps-facts):not(.aps-entry-subtitle),
html body.aps-site .aps-wrap .aps-button,
html body.aps-site .aps-wrap .aps-link,
html body.aps-site .aps-wrap .aps-footer,
html body.aps-site .aps-wrap .aps-detail-section p,
html body.aps-site .aps-wrap .aps-legal-content {font-family:var(--aps-font-body,system-ui,sans-serif)!important}

/* V1.4.2: logo signature has its own global font role; old subtitle role stays fallback. */
html body.aps-site .aps-wrap .aps-brand-signature{font-family:var(--aps-font-brand,var(--aps-font-subtitle,Georgia,serif))!important}
/* Tree menu. Styles are intentionally scoped to this theme, not WordPress's admin bar. */
.aps-site .aps-top-links{overflow:visible}
.aps-site .aps-nav-list{margin:0;padding:0;display:flex;list-style:none;align-items:center;gap:clamp(12px,1.8vw,28px);flex-wrap:wrap}
.aps-site .aps-nav-item{position:relative;display:flex;align-items:center;gap:3px;min-width:0}
.aps-site .aps-nav-label{font-size:12px;color:var(--aps-muted)}
.aps-site .aps-nav-toggle{border:0;background:transparent;color:var(--aps-muted);padding:5px 7px;cursor:pointer;min-width:26px;min-height:28px;font-size:13px}
.aps-site .aps-nav-toggle:focus-visible{outline:2px solid var(--aps-accent)}
.aps-site .aps-nav-sub{display:none;position:absolute;top:calc(100% - 1px);left:0;z-index:50;min-width:185px;max-width:min(330px,85vw);padding:8px;border:1px solid var(--aps-border);background:var(--aps-surface);box-shadow:0 12px 20px #0002;flex-direction:column;align-items:stretch;gap:0;white-space:normal}
.aps-site .aps-nav-sub .aps-nav-item{width:100%;justify-content:space-between;gap:4px}
.aps-site .aps-nav-sub .aps-nav-item>a,.aps-site .aps-nav-sub .aps-nav-label{display:block;padding:8px 9px;line-height:1.35;flex:1}
.aps-site .aps-nav-sub .aps-nav-sub{left:calc(100% - 3px);top:0}
.aps-site .aps-nav-item:hover>.aps-nav-sub,.aps-site .aps-nav-item:focus-within>.aps-nav-sub,.aps-site .aps-nav-item.aps-nav-open>.aps-nav-sub{display:flex}
@media(max-width:760px){.aps-site .aps-nav-list{justify-content:center}.aps-site .aps-nav-sub .aps-nav-sub{left:auto;right:calc(100% - 3px)}}
@media(max-width:540px){.aps-site .aps-nav-list{gap:6px 14px}.aps-site .aps-nav-sub{left:auto;right:0;max-width:78vw}.aps-site .aps-nav-sub .aps-nav-sub{position:static;box-shadow:none;padding-left:12px;max-width:100%}}

.aps-site .aps-nav-item.aps-nav-forced-closed > .aps-nav-sub{display:none!important}
