@font-face{font-family:Editorial;src:local('Georgia');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:#242722;background:#eeeae3;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #996a42;outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}header{height:104px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #c9c5bd;background:#eeeae3}.brand{width:164px;display:block}.brand img{filter:brightness(0);width:100%;height:auto}nav{display:flex;gap:38px;align-items:center;font-size:13px}nav a{padding:14px 0}nav a:hover{color:#8b684d}.nav-contact{margin-left:28px}.nav-contact span{margin-left:26px;font-size:21px}.menu-toggle{display:none}.hero,.section{padding:0 4.5%}.hero-top{display:flex;justify-content:space-between;padding:32px 0 12px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:500;line-height:1.6}.hero-year{font-size:12px;color:#686b61}.hero-heading{display:flex;justify-content:space-between;align-items:flex-end;padding:18px 0 43px}h1,h2,h3,p{margin:0}h1{font-size:clamp(72px,8.8vw,146px);font-weight:400;line-height:.94;letter-spacing:-7px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}h1 em{letter-spacing:-6px}.hero-intro{width:28%;padding-bottom:4px}.hero-intro p{font-size:17px;line-height:1.65;margin-bottom:31px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:12px;border-bottom:1px solid currentColor;padding-bottom:9px}.text-link span{font-size:21px;line-height:1}.hero-photo{position:relative;height:clamp(420px,47vw,720px);overflow:hidden;background:#4f5146}.hero-photo>img{height:100%;object-fit:cover;object-position:center 55%}.hero-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0008);pointer-events:none}.photo-caption{position:absolute;bottom:34px;left:36px;color:#fff;z-index:1;display:flex;flex-direction:column;gap:11px}.photo-caption>span{font-size:9px;letter-spacing:1.6px}.photo-caption a{font-size:25px;display:flex;gap:36px;align-items:center}.vertical-note{position:absolute;right:26px;top:34px;writing-mode:vertical-rl;color:#fff;font-size:9px;letter-spacing:2px}.hero-bottom{display:flex;align-items:center;justify-content:space-between;padding:27px 0 68px}.hero-bottom p{font-size:13px;line-height:1.6;color:#62665b}.section{padding-top:86px;padding-bottom:86px;border-top:1px solid #c9c5bd;scroll-margin-top:20px}.section-top{display:flex;justify-content:space-between}.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin:40px 0 36px}h2{font-size:clamp(42px,5.1vw,78px);font-weight:400;letter-spacing:-3px;line-height:1.08}.section-title p{font-size:13px;line-height:1.8;color:#62665b;width:28%;padding-bottom:6px}.filters{display:flex;gap:26px;margin:34px 0 40px;border-bottom:1px solid #c9c5bd}.filters button{background:none;border:0;padding:14px 0;font-size:12px;color:#787b71;position:relative}.filters button.active{color:#242722}.filters button.active:after{content:'';position:absolute;height:2px;bottom:-1px;left:0;right:0;background:#242722}.filters sup{font-size:8px;margin-left:7px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px 30px}.project-card{display:block;border:0;background:none;text-align:left;padding:0;width:100%}.project-card[hidden]{display:none}.project-image{overflow:hidden;background:#d8d4cb;aspect-ratio:1.37}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.project-card:hover img{transform:scale(1.035)}.project-info{display:flex;justify-content:space-between;align-items:flex-start;padding-top:17px;gap:15px}.project-info h3{font-size:19px;font-weight:400;letter-spacing:-.3px}.project-info p{font-size:10px;color:#73766b;letter-spacing:.7px;margin-top:9px;text-transform:uppercase}.project-info>span{font-size:25px}.project-note{margin-top:44px;font-size:11px;color:#73766b}.studio{background:#ddd8ce;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-top:80px;padding-bottom:80px}.studio-image{position:relative}.studio-image img{height:650px;object-fit:cover}.studio-image>span{position:absolute;bottom:23px;left:24px;color:#fff;font-size:9px;letter-spacing:1.8px}.studio-content h2{font-size:clamp(35px,4vw,62px);margin:38px 0 32px}.studio-content>p{font-size:14px;line-height:1.9;color:#5d6156;margin-bottom:19px;max-width:480px}.studio-sign{border-top:1px solid #b9b6ac;padding-top:25px;margin:30px 0;display:flex;justify-content:space-between;align-items:center}.studio-sign span{font-family:Georgia,serif;font-size:25px}.studio-sign small{font-size:9px;letter-spacing:1.6px}.service-list{margin-top:55px}.service-list article{display:grid;grid-template-columns:50px 1.2fr 1fr 30px;gap:26px;border-top:1px solid #c9c5bd;padding:30px 0;align-items:start}.service-list article:last-child{border-bottom:1px solid #c9c5bd}.service-list article>span:first-child{font-size:11px;color:#797c71;padding-top:7px}.service-list h3{font-size:25px;font-weight:400;letter-spacing:-.5px;max-width:400px}.service-list p{font-size:13px;line-height:1.8;color:#62665b;max-width:360px}.service-symbol{font-size:25px}.references{background:#e3dfd6;padding-top:55px;padding-bottom:55px}.reference-names{display:grid;grid-template-columns:repeat(4,1fr);column-gap:40px;row-gap:36px;margin:44px 0;font-size:18px;line-height:1.4;letter-spacing:-.5px}.contact{background:#252923;color:#eeeae3;border:0}.contact .section-top{color:#a5ab9d}.contact-title{display:flex;justify-content:space-between;align-items:center;margin:48px 0 65px}.contact h2{font-size:clamp(45px,6vw,90px)}.contact-arrow{font-size:80px;border:1px solid #686e60;border-radius:50%;width:132px;height:132px;display:flex;align-items:center;justify-content:center;font-weight:300;transition:background .2s}.contact-arrow:hover{background:#48513e}.contact-grid{display:grid;grid-template-columns:1.5fr 1.2fr .7fr;gap:35px;border-top:1px solid #555c4e;padding-top:32px}.contact-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.contact-grid .eyebrow{color:#a5ab9d;margin-bottom:6px}.contact-grid a,.contact-grid p{font-size:13px;line-height:1.8}.contact-grid .email{font-size:clamp(15px,1.75vw,26px);letter-spacing:-.6px}.contact-grid .text-link{padding-bottom:4px}footer{background:#252923;color:#a5ab9d;border-top:1px solid #555c4e;display:flex;justify-content:space-between;align-items:center;padding:34px 4.5%;font-size:10px;letter-spacing:.5px}footer .brand{width:130px}footer .brand img{filter:none}dialog{border:0;background:#eeeae3;color:#242722;padding:0;width:min(1120px,94vw);max-height:94vh}dialog::backdrop{background:#151810d9;backdrop-filter:blur(6px)}.dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 32px;background:#eeeae3;border-bottom:1px solid #c9c5bd;position:sticky;top:0;z-index:2;font-size:10px;letter-spacing:1px}.dialog-bar button{border:0;background:none;padding:10px;font-size:13px}.dialog-body{padding:45px 32px}.dialog-body h2{font-size:clamp(30px,4vw,58px);margin:20px 0}.dialog-body>p{font-size:14px;line-height:1.7;max-width:700px;margin-bottom:35px}#dialog-images{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:35px}#dialog-images img{height:100%;width:100%;object-fit:contain;background:#e2ded5}#dialog-images img:first-child{grid-column:1/-1;max-height:680px}.no-scroll{overflow:hidden}@media(min-width:1600px){.hero,.section,header,footer{padding-left:max(4.5%,calc((100vw - 1600px)/2));padding-right:max(4.5%,calc((100vw - 1600px)/2))}}@media(max-width:800px){header{height:82px}.brand{width:140px}.menu-toggle{display:flex;gap:20px;border:0;background:none;font-size:12px;align-items:center}.menu-toggle span{font-size:24px}nav{display:none;position:absolute;top:82px;left:0;right:0;padding:25px 5%;background:#eeeae3;z-index:10;border-bottom:1px solid #bdbab1;flex-direction:column;gap:10px;align-items:flex-start}nav.open{display:flex}.nav-contact{margin:0}.hero-top{padding-top:24px}.hero-top .eyebrow{font-size:8px}.hero-year{font-size:10px}.hero-heading{padding:26px 0 30px;align-items:flex-start}h1{font-size:clamp(65px,11vw,95px);letter-spacing:-4px}h1 em{letter-spacing:-4px}.hero-intro{width:32%;padding-top:10px}.hero-intro p{font-size:12px;margin-bottom:18px}.hero-intro .text-link{font-size:10px;gap:12px}.hero-photo{height:460px}.hero-bottom{padding-bottom:45px}.hero-bottom p{font-size:11px}.section{padding-top:55px;padding-bottom:55px}.section-top .eyebrow:last-child{font-size:8px;max-width:44%;text-align:right}.section-title{margin:32px 0}.section-title p{width:35%;font-size:11px}h2{font-size:48px;letter-spacing:-2px}.project-grid{gap:32px 20px}.project-info h3{font-size:16px}.project-info p{font-size:9px}.studio{gap:6%;padding-top:55px}.studio-image img{height:540px}.studio-content h2{font-size:34px}.studio-content>p{font-size:12px}.studio-sign{flex-direction:column;align-items:flex-start;gap:10px}.service-list article{grid-template-columns:25px 1fr 1fr 20px;gap:17px}.service-list h3{font-size:20px}.service-list p{font-size:12px}.reference-names{grid-template-columns:repeat(2,1fr);font-size:17px}.contact-arrow{width:90px;height:90px;font-size:55px}.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>div:last-child{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}.contact-grid>div:last-child .eyebrow{width:100%}}@media(max-width:520px){.hero,.section{padding-left:6%;padding-right:6%}header,footer{padding-left:6%;padding-right:6%}.hero-heading{display:block}h1{font-size:83px;line-height:.98}.hero-intro{width:100%;display:flex;align-items:center;justify-content:space-between;padding-top:26px}.hero-intro p{margin:0}.hero-photo{height:430px}.photo-caption{bottom:22px;left:21px;right:16px}.photo-caption a{font-size:20px;gap:15px}.photo-caption>span{font-size:8px}.vertical-note{right:16px;top:20px;font-size:8px}.hero-bottom{gap:20px;align-items:flex-start;padding-top:22px}.hero-bottom p{font-size:10px;max-width:57%}.hero-bottom .text-link{font-size:10px;gap:12px;white-space:nowrap}.section-title{display:block}h2{font-size:46px}.section-title p{width:100%;margin-top:22px}.filters{gap:23px;overflow:auto;margin-bottom:27px}.filters button{font-size:11px;white-space:nowrap}.project-grid{grid-template-columns:1fr;gap:34px}.project-info h3{font-size:19px}.project-info p{font-size:9px}.project-note{font-size:10px;line-height:1.7}.studio{grid-template-columns:1fr;gap:38px}.studio-image img{height:490px}.studio-content h2{font-size:42px}.studio-content>p{font-size:14px}.studio-sign{flex-direction:row;align-items:center}.service-list{margin-top:35px}.service-list article{grid-template-columns:22px 1fr 20px;gap:15px;padding:25px 0}.service-list h3{font-size:22px}.service-list p{grid-column:2;grid-row:2;font-size:12px}.service-symbol{grid-column:3;grid-row:1}.reference-names{font-size:15px;gap:25px 20px}.contact-title{margin:35px 0 45px;align-items:flex-start}.contact h2{font-size:40px}.contact-arrow{width:45px;height:45px;font-size:28px;margin-top:5px;flex-shrink:0;margin-left:5px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid .email{font-size:23px}.contact-grid>div:last-child{grid-column:auto}footer{flex-wrap:wrap;gap:25px}footer .brand{width:112px}footer>span{font-size:9px}footer>a:last-child{width:100%;text-align:right}.dialog-bar{padding:14px 18px}.dialog-body{padding:28px 18px}#dialog-images{grid-template-columns:1fr;gap:14px}#dialog-images img:first-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.all-italic{font-family:Georgia,serif;font-style:italic;font-weight:400}.all-italic em{font-family:inherit;font-style:inherit;letter-spacing:inherit;font-weight:inherit}

.hero-intro{container-type:inline-size}.hero-intro .architecture-values{display:inline-block;white-space:nowrap;font-size:clamp(9px,4cqw,14px)}.cover-composition img{height:auto;object-fit:contain;width:100%;aspect-ratio:auto}.studio:has(.cover-composition){gap:6%;grid-template-columns:1.1fr 1fr}
@media(max-width:520px){.hero-intro{display:block}.hero-intro p{margin-bottom:18px}.hero-intro .architecture-values{font-size:clamp(11px,4cqw,14px)}.studio:has(.cover-composition){grid-template-columns:1fr;gap:38px}}

.founder-profile{border-top:1px solid #b9b6ac;padding-top:25px;margin:28px 0;display:flex;gap:24px;align-items:center}.profile-photo-slot{width:108px;aspect-ratio:4/5;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#c9c4ba;color:#77796e;border:1px solid #b9b6ac;overflow:hidden}.profile-photo-slot>span{font-family:Georgia,serif;font-style:italic;font-size:32px;font-weight:400}.profile-photo-slot img{width:100%;height:100%;object-fit:cover}.founder-info{display:flex;flex-direction:column;gap:10px}.founder-info>span{font-family:Georgia,serif;font-size:27px}.founder-info small{font-size:9px;letter-spacing:1.6px}.founder-info p{font-size:11px;color:#62665b;margin-top:3px}@media(max-width:800px){.founder-profile{gap:18px}.profile-photo-slot{width:90px}.founder-info>span{font-size:23px}}

:root{--italic-heading-size:clamp(35px,4vw,62px)}.hero h1,.section h2:has(em){font-size:var(--italic-heading-size);letter-spacing:-2px}.hero h1 em,.section h2 em{font-size:inherit;letter-spacing:inherit}@media(max-width:800px){:root{--italic-heading-size:34px}}@media(max-width:520px){:root{--italic-heading-size:42px}}

.profile-photo-slot img{object-position:center 30%}

.hero-intro{width:max(28%,340px)}.hero-intro p{font-weight:700}.hero-intro .architecture-values{font-size:inherit;font-weight:inherit;white-space:nowrap}@media(max-width:800px){.hero-intro{width:max(32%,240px)}}@media(max-width:520px){.hero-intro{width:100%}}

.hero-photo{width:80%;height:clamp(336px,37.6vw,576px);margin-inline:auto}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:800px){.hero-photo{height:368px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.hero-photo{height:344px}.project-grid{grid-template-columns:1fr}}

header .brand{width:190px}header .brand img{filter:none}@media(max-width:800px){header .brand{width:160px}}

.profile-photo-slot{width:124.2px}.founder-profile{gap:27px;align-items:center}.founder-info{gap:12px}.founder-info>span{font-size:29px;line-height:1.15}.founder-info small{font-size:10px;line-height:1.5}.founder-info p{font-size:12px;line-height:1.6;margin-top:2px}@media(max-width:800px){.profile-photo-slot{width:103.5px}.founder-profile{gap:21px}.founder-info{gap:10px}.founder-info>span{font-size:25px}.founder-info small{font-size:9px}.founder-info p{font-size:11px}}

.hero-intro p.architecture-statement{font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:500;letter-spacing:1.8px;line-height:1.6}.hero-intro .architecture-statement .architecture-values{font-size:inherit;font-weight:inherit}@media(max-width:800px){.hero-intro p.architecture-statement{font-size:8px}}

/* Balanced contact information typography */
.contact-grid .email,.contact-grid a[href^="tel:"],.contact-grid p{font-size:14px;line-height:1.8;letter-spacing:normal}

/* Draft: subtle architectural drawing across the warm gray canvas */
body{background-color:#eeeae3;background-image:url('assets/architectural-plan.svg');background-size:1500px 1100px;background-position:center 60px;background-repeat:repeat-y}
header{background-color:rgba(238,234,227,.95)}
.studio,.hero,.projects,.services,.references{background-color:transparent}
@media(max-width:800px){body{background-size:1050px 770px;background-position:35% 80px}}

/* Expanded office drawing */
body{background-size:2200px 1500px;background-position:center 0}
@media(max-width:800px){body{background-size:1500px 1023px;background-position:45% 0}}

/* APEC source plan: individually selected furnished areas per section */
body{background-image:none}
.studio,.hero,.projects,.services,.references,.contact{background-repeat:no-repeat;background-size:cover;background-position:center}
.studio{background-image:url('assets/apec-studio.webp')}
.hero{background-image:url('assets/apec-hero.webp')}
.projects{background-image:url('assets/apec-projects.webp');background-size:100% auto;background-repeat:repeat-y}
.services{background-image:url('assets/apec-services.webp')}
.references{background-image:url('assets/apec-references.webp')}
.contact{background-image:url('assets/apec-contact.webp');background-color:#eeeae3;color:#242722}
.contact-grid .eyebrow{color:#62665b}
.contact-grid{border-color:#c9c5bd}

/* Wider source-plan views: reduce furniture scale without repeated tiles */
.studio,.hero,.projects,.services,.references,.contact{background-size:100% auto;background-repeat:no-repeat;background-position:center center}
@media(max-width:800px){.studio,.hero,.projects,.services,.references,.contact{background-size:auto 100%;background-position:center}}
.studio,.hero,.projects,.services,.references,.contact{background-size:contain}
.projects{background-size:auto 850px}
@media(max-width:800px){.studio,.hero,.projects,.services,.references,.contact{background-size:contain}}

/* Full-width plan strips, with no centered contain sizing */
.studio,.hero,.projects,.services,.references,.contact{background-size:100% auto;background-position:center center;background-repeat:repeat-y}
@media(max-width:800px){.studio,.hero,.projects,.services,.references,.contact{background-size:100% auto;background-position:center center}}

/* Keep the contact section in the original solid palette */
.contact{background:#252923;color:#eeeae3;border:0}
.contact-grid .eyebrow{color:#a5ab9d}
.contact-grid{border-color:#555c4e}
