/* Original line studies: a measured visual language inspired by working drawings. */
.intro,.page-heading{position:relative;isolation:isolate;background-image:none}
.page-heading::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:470px;max-width:45%;inset:0 0 0 auto;background:url('/assets/illustrations/plan-study.svg') center/contain no-repeat;opacity:.11;mask-image:linear-gradient(90deg,transparent,#000)}
.intro-original{position:relative;background:linear-gradient(110deg,#eeeee3aa,transparent 70%)}
.intro-original::after{content:"";position:absolute;left:var(--gutter);right:var(--gutter);bottom:0;height:12px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 24px);background-size:100% 7px;background-repeat:no-repeat;background-position:bottom}
.section-heading>div{position:relative;padding-left:22px;border-left:1px solid #b27d5880}
.section-heading>div::before{content:"";position:absolute;width:7px;height:7px;left:-4px;top:0;border:1px solid var(--terracotta);background:var(--paper)}
.essence{background-image:none}
.contact{position:relative;isolation:isolate;background-image:none}
.contact::after{content:"";position:absolute;left:var(--gutter);right:var(--gutter);bottom:0;border-bottom:1px solid #d0966650;pointer-events:none}
footer{padding-top:0;background-color:#194d48;background-image:none}
.architecture-plate{padding:38px 0 30px;margin-bottom:62px;border-bottom:1px solid #ffffff24;overflow:hidden}
.drawing-caption{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:1.6px;color:#d7b18b;line-height:1.7}
.drawing-footnote{color:#c0cfbf;font-size:11px;letter-spacing:.3px}
.drawing-footnote>span:last-child{font-size:9px;letter-spacing:1.5px}
.architectural-drawing{display:block;width:100%;height:auto;max-height:390px;margin:4px auto;color:#c5d1bd;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.architectural-drawing .guide{opacity:.24;stroke-dasharray:4 9}
.architectural-drawing .structure{opacity:.8}
.architectural-drawing .roof{stroke:#d7a67f;stroke-width:1.35}
.architectural-drawing .glass{opacity:.45}
.architectural-drawing .screen{opacity:.5}
.architectural-drawing .site{opacity:.22}
.architectural-drawing .plant{opacity:.48}
.architectural-drawing .accent,.architectural-drawing .dimension{stroke:#d7a67f;opacity:.65}
.architecture-plate.is-drawing .architectural-drawing :is(.structure,.roof,.glass){animation:draft-line 1.8s cubic-bezier(.25,.6,.25,1) both}
.architecture-plate.is-drawing .architectural-drawing .glass{animation-delay:.18s}
@keyframes draft-line{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}
@media(min-width:1600px){.architectural-drawing{max-height:430px}}
@media(max-width:760px){.page-heading::after{max-width:65%;opacity:.065}.drawing-caption{font-size:9px;letter-spacing:1px}.drawing-caption>span:last-child{display:none}.architecture-plate{margin-bottom:42px;padding-top:28px}.architectural-drawing{width:145%;max-width:none;margin-left:-22.5%;margin-block:18px}.section-heading>div{padding-left:16px}.drawing-footnote{font-size:11px}}
@media(prefers-reduced-motion:reduce){.architecture-plate.is-drawing .architectural-drawing path{animation:none!important}}
html.reduce-motion .architecture-plate.is-drawing .architectural-drawing path{animation:none!important}
@media(forced-colors:active){.page-heading::after,.architectural-drawing{display:none}}
/* Editorial tools and article calls to action follow the same drawing palette. */
.post-grid .card-image{aspect-ratio:1200/630}
.post-grid .card-image img{object-fit:contain;background:#f5f3eb}
.article-cover img{width:100%;height:auto;max-height:none;object-fit:contain}
.article-cover{max-width:1200px;margin-inline:auto}
.article-enquiry{padding:32px;margin-block:38px;background:#e9ede3;border:1px solid #cdd6c8;position:relative}
.article-enquiry::before{content:"";width:9px;height:9px;border:1px solid #b6845e;position:absolute;left:-5px;top:-5px;background:var(--paper)}
.article-enquiry h2{font-size:clamp(25px,3vw,34px);line-height:1.25;margin:18px 0!important}
.article-enquiry .contact-button{background:var(--green);color:var(--paper);text-decoration:none;margin-top:22px}
.article-source-image{margin:36px 0}
.article-source-image img{width:100%;height:auto;max-height:520px;object-fit:cover}
.article-source-image figcaption{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.5}
.share-row{flex-wrap:wrap;gap:10px}
.share-row a{font-size:13px;border:1px solid var(--line);padding:10px 14px;display:inline-flex;gap:8px;align-items:center;text-decoration:none!important}
.share-row a:hover{border-color:var(--green);background:#e9ede3}
.article-toc>.text-link{margin-top:28px;font-size:13px;line-height:1.5}
.article-topics{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}
.article-topics button{border:1px solid var(--line);border-radius:0;background:transparent;color:var(--green);padding:10px 15px;cursor:pointer;font-size:12px;min-height:42px}
.article-topics button[aria-pressed="true"]{background:var(--green);color:var(--paper);border-color:var(--green)}
@media(max-width:760px){.article-cover{padding-inline:var(--gutter)}.article-enquiry{padding:24px 20px}.share-row>span{flex-basis:100%}.article-source-image img{max-height:360px}}
.article-cover{height:auto}
@media(max-width:760px){footer{padding-bottom:100px}}
