/* PL editorial system, 2026-11-07. Portfolio UI only; project artwork keeps its type. */
html[lang="en"][data-pl-editorial]{
 --wl-type-section:36px;--wl-type-title:24px;--wl-type-subtitle:20px;
 --wl-type-lead:18px;--wl-type-body:16px;--wl-type-caption:14px;
 --wl-type-meta:12px;--wl-editorial-gap:var(--wl-gap,24px);
}
/* One outer grid. The background stays full width while copy shares the media axes. */
html[lang="en"][data-pl-editorial] body #projects-inner#projects-inner details.project>.project-body>.wl-case-intro{
 grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--wl-editorial-gap);row-gap:16px;
 padding:24px 0!important;margin-bottom:24px!important;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-case-intro>.wl-ci-title{
 grid-column:1/4;font:500 var(--wl-type-subtitle)/1.3 var(--sans)!important;
 letter-spacing:-.015em!important;max-width:none;text-wrap:balance;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-case-intro>.wl-ci-copy{
 grid-column:4/-1;max-width:none;min-width:0;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner #case-archives .wl-case-intro.wl-ci-no-title>.wl-ci-copy{grid-column:1/-1}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-ci-copy>p{
 font:400 var(--wl-type-caption)/1.5 var(--sans);letter-spacing:0;max-width:68ch;
 margin:0;text-wrap:pretty;overflow-wrap:break-word;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-ci-copy>p+p{margin-top:8px}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-ci-copy>.wl-ci-description{
 font:400 var(--wl-type-lead)/1.5 var(--sans);max-width:60ch;margin:0 0 16px;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-ci-copy>.wl-ci-meta{font-size:var(--wl-type-meta);font-family:var(--mono);letter-spacing:0}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner details.project>summary h3{
 font:500 var(--wl-type-title)/1.25 var(--sans)!important;letter-spacing:-.015em!important;text-wrap:balance;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner details.project>summary .project-category{
 font:400 var(--wl-type-caption)/1.5 var(--sans)!important;letter-spacing:0!important;
}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner details.project>.project-body>.wl-case-footer{margin-top:48px!important}
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-case-footer>a{font:400 14px/21px var(--sans)!important;letter-spacing:0!important}
/* A consistent hierarchy for sections and services; hero and portrait remain independent. */
html[lang="en"][data-pl-editorial] body :is(#services#services#services #services-title,#method#method#method #process-title,#contact#contact#contact #contact-title){
 font:500 var(--wl-type-section)/1.15 var(--sans)!important;letter-spacing:-.015em!important;
}
html[lang="en"][data-pl-editorial] body #services#services#services .section-heading{margin-bottom:32px!important}
html[lang="en"][data-pl-editorial] body #services#services#services .service-card h3{
 font:500 var(--wl-type-title)/1.25 var(--sans)!important;letter-spacing:-.015em!important;margin-bottom:16px!important;
}
html[lang="en"][data-pl-editorial] body #services#services#services #service-cards{gap:32px var(--wl-editorial-gap)!important}
html[lang="en"][data-pl-editorial] body #services .wl-mini-row{font:400 16px/1.5 var(--sans)}
html[lang="en"][data-pl-editorial] body #services .wl-mini-note{font:400 14px/1.5 var(--sans);margin-top:16px}
html[lang="en"][data-pl-editorial] #method .method-steps{gap:32px}
html[lang="en"][data-pl-editorial] #method .method-steps h3{font:500 20px/1.3 var(--sans);letter-spacing:-.015em;margin-bottom:8px}
html[lang="en"][data-pl-editorial] #method .method-steps p{font:400 16px/1.6 var(--sans);letter-spacing:0}
html[lang="en"][data-pl-editorial] #method .method-body{padding-block:32px}
html[lang="en"][data-pl-editorial] #process-title .wl-method-phrase{display:inline-block;max-width:100%}
html[lang="en"][data-pl-editorial] #process-title .wl-method-phrase+.wl-method-phrase::before{content:'· ';white-space:pre}
html[lang="en"][data-pl-editorial] body .wl-chapter:is([data-chapter="services"],[data-chapter="method"],[data-chapter="contact"]){margin-block-start:64px!important}
/* Reader controls: one text size, separate quiet numeric metadata. */
html[lang="en"][data-pl-editorial] #case-racionz #galed-gallery-title,
html[lang="en"][data-pl-editorial] #case-kotky-katii #kc-colour-study-title,
html[lang="en"][data-pl-editorial] #case-metamorphosis .meta-ending-label{
 font:500 20px/1.3 var(--sans)!important;letter-spacing:-.015em!important;
}
html[lang="en"][data-pl-editorial] #case-racionz .galed-gallery-header p,
html[lang="en"][data-pl-editorial] #case-racionz .galed-photo-caption>p,
html[lang="en"][data-pl-editorial] #case-racionz .galed-interpretation,
html[lang="en"][data-pl-editorial] #case-racionz .galed-phase-description,
html[lang="en"][data-pl-editorial] #case-kotky-katii .kc-colour-study p,
html[lang="en"][data-pl-editorial] #case-metamorphosis .meta-caption,
html[lang="en"][data-pl-editorial] #case-metamorphosis .meta-source{
 font:400 14px/1.5 var(--sans);letter-spacing:0;text-wrap:pretty;
}
html[lang="en"][data-pl-editorial] #case-racionz .galed-photo-context{font:400 14px/1.5 var(--sans);margin:16px 0 8px}
html[lang="en"][data-pl-editorial] #case-racionz .galed-photo-picker select{font:400 16px/1.5 var(--sans)}
html[lang="en"][data-pl-editorial] #case-racionz .galed-gallery button:not(.galed-photo-navigation button){font:400 14px/1.5 var(--sans)}
html[lang="en"][data-pl-editorial] #case-racionz .galed-viewer-controls{gap:8px 16px;margin-top:8px}
html[lang="en"][data-pl-editorial] #case-racionz .galed-process-steps{gap:8px;margin-top:16px}
html[lang="en"][data-pl-editorial] #case-racionz .galed-interpretation{margin-top:16px;max-width:72ch}
html[lang="en"][data-pl-editorial] #case-metamorphosis .meta-ending-copy{font:400 16px/1.5 var(--sans);letter-spacing:0}
/* Readable field text; one label/helper size. Keep touch targets and input behaviour. */
html[lang="en"][data-pl-editorial] #contact :is(input,textarea){font:400 16px/1.5 var(--sans)}
html[lang="en"][data-pl-editorial] #contact :is(.contact-field-error,.contact-file-limit,.contact-file-error,.contact-files li,.contact-details-optional){font-size:14px;line-height:1.5}
html[lang="en"][data-pl-editorial] #contact .contact-field{margin-bottom:0}
html[lang="en"][data-pl-editorial] #contact .contact-details-body{gap:24px}
html[lang="en"][data-pl-editorial] .tail-about-name{font-family:var(--sans);font-size:14px;line-height:1.5;letter-spacing:0}
html[lang="en"][data-pl-editorial] [data-framer-name="footer shell"] p{font-family:var(--sans)!important}
html[lang="en"][data-pl-editorial] [data-framer-name="footer label cv"] p{font-size:14px!important;line-height:21px!important}
@media(max-width:1099px){
 html[lang="en"][data-pl-editorial]{--wl-type-section:30px;--wl-type-title:22px}
 html[lang="en"][data-pl-editorial] body #projects-inner#projects-inner details.project>.project-body>.wl-case-intro{grid-template-columns:repeat(8,minmax(0,1fr))}
 html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-case-intro>.wl-ci-title{grid-column:1/3}
 html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-case-intro>.wl-ci-copy{grid-column:3/-1}
}
@media(max-width:760px){
 html[lang="en"][data-pl-editorial]{--wl-type-lead:17px}
 html[lang="en"][data-pl-editorial] body .wl-chapter:is([data-chapter="services"],[data-chapter="method"],[data-chapter="contact"]){margin-block-start:48px!important}
 html[lang="en"][data-pl-editorial] body #projects-inner#projects-inner details.project>.project-body>.wl-case-intro{grid-template-columns:repeat(4,minmax(0,1fr));padding:16px 0!important;margin-bottom:24px!important}
 html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-case-intro>:is(.wl-ci-title,.wl-ci-copy){grid-column:1/-1}
 html[lang="en"][data-pl-editorial] #projects-inner#projects-inner details.project>.project-body>.wl-case-footer{margin-top:32px!important}
 html[lang="en"][data-pl-editorial] body #services#services#services .section-heading{margin-bottom:24px!important}
 html[lang="en"][data-pl-editorial] #method .method-body{padding-block:24px}
}
@media(max-width:600px){
 html[lang="en"][data-pl-editorial] #process-title .wl-method-phrase{display:block}
 html[lang="en"][data-pl-editorial] #process-title .wl-method-phrase+.wl-method-phrase::before{content:none}
}

/* Minimal case copy: the listing owns the label; only new information follows. */
html[lang="en"][data-pl-editorial] #projects-inner#projects-inner .wl-ci-no-description .wl-ci-tasks{font-size:16px;line-height:1.5}
