@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Instrument+Serif:ital@0;1&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#353047;background:#f7f3ee;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}a:focus-visible{outline:2px solid #775a8b;outline-offset:5px}.header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 5vw;background:#f7f3ee}.brand{display:inline-flex;align-items:center;gap:11px;white-space:nowrap;font:700 1.26rem/1 'Manrope',sans-serif;letter-spacing:.24em}.brand-icon{width:38px;height:38px;display:grid;place-items:center;background:#514965;border-radius:50%}.brand-icon img{width:24px;height:24px}.lambda{font-weight:400}.header nav{display:flex;gap:clamp(16px,3vw,44px);font-size:.87rem}.header nav a:hover,.compare:hover,.footer a:hover{color:#896ca3}.compare{font-size:.78rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.compare span{font-size:1.1rem;margin-left:8px}
.hero{min-height:min(770px,calc(100svh - 88px));display:grid;grid-template-columns:53% 47%;background:#ebe6e8}.hero-copy{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:60px max(5vw,36px) 72px;background:linear-gradient(130deg,#f4eee9,#ece7e9 74%,#e6e1e8);z-index:1}.eyebrow,.section-label{font:700 .69rem/1.5 'Manrope',sans-serif;letter-spacing:.19em;text-transform:uppercase}.eyebrow{display:flex;gap:12px;align-items:center;margin-bottom:37px;color:#665879}.eyebrow-line{width:26px;height:1px;background:#9782a3}.hero h1{font:700 clamp(4.6rem,6.9vw,8.6rem)/.94 'Manrope',Arial,sans-serif;letter-spacing:-.092em;margin:0 0 28px;white-space:nowrap}.hero h1 em,.intro h2 em,.section-top h2 em,.services h2 em,.contact h2 em{font-family:'Instrument Serif',Georgia,serif;font-size:1.12em;line-height:.74;font-weight:400;letter-spacing:-.045em}.hero h1 em{color:#89698a}.hero h1 .period{color:#c28d80}.hero-description{max-width:390px;font-size:1.08rem;line-height:1.55;color:#625e6c;margin:0 0 30px}.primary-button,.contact-button{display:inline-flex;align-items:center;gap:32px;padding:17px 24px;background:#514965;color:#fff;border-radius:40px;font-weight:700;font-size:.9rem;transition:background .2s,transform .2s}.primary-button:hover,.contact-button:hover{background:#6c5d80;transform:translateY(-2px)}.primary-button span,.contact-button span{font-size:1.15rem;font-weight:400}.hero-footnote{position:absolute;bottom:30px;left:max(5vw,36px);color:#8f8794;font:700 .63rem/1 'Manrope',sans-serif;letter-spacing:.16em;margin:0}.hero-footnote span{padding:0 10px;color:#bd9ca5}.hero-image{position:relative;min-height:600px;background:#737a9a url('assets/cloud-moon-reference.png') 50% 43%/cover no-repeat}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(42,37,68,.35))}.image-caption{position:absolute;z-index:1;right:28px;bottom:26px;padding:11px 16px;border:1px solid #ffffffa1;border-radius:30px;background:#ffffff2e;backdrop-filter:blur(9px);color:#fff;font:700 .65rem/1 'Manrope',sans-serif;letter-spacing:.15em}.image-caption span{margin-left:14px;font-size:1rem}
.intro{display:grid;grid-template-columns:25% 1fr;gap:40px;padding:125px 6vw 130px;background:#f7f3ee}.section-label{color:#776287}.intro-body{max-width:900px}.intro h2,.section-top h2,.services h2,.contact h2{font:700 clamp(3.2rem,5.7vw,6.5rem)/1.05 'Manrope',sans-serif;letter-spacing:-.072em;margin:0}.intro h2 em{color:#937798}.intro-body p{font-size:1.25rem;line-height:1.55;color:#6b6371;max-width:650px;margin:37px 0 0}
.projects{padding:110px 6vw 105px;background:#eae4ed}.section-top{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:55px}.section-top .section-label,.services-heading .section-label{margin-bottom:25px}.section-top h2 em{color:#8f719b}.section-top>p{max-width:310px;line-height:1.55;color:#6b6374;margin:0 0 9px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-card{min-width:0}.project-image{height:clamp(270px,33vw,520px);position:relative;overflow:hidden;background:#c9bfcf}.project-image img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.project-card:hover img{transform:scale(1.035)}.sample-label{position:absolute;bottom:19px;left:19px;padding:10px 13px;background:#f7f3eee8;color:#554866;font:700 .62rem/1 'Manrope',sans-serif;letter-spacing:.13em}.project-details{border-top:1px solid #766d8266;margin-top:17px;padding-top:18px}.project-details>span{font:700 .67rem 'Manrope',sans-serif;letter-spacing:.14em;color:#80708d}.project-details h3{font:700 clamp(1.6rem,2.35vw,2.7rem)/1.13 'Manrope',sans-serif;letter-spacing:-.06em;margin:14px 0 4px}.project-details p{color:#79717e;margin:0}.project-note{margin:65px 0 0;font-size:.85rem;color:#736a7a;line-height:1.5}
.services{padding:120px 6vw 130px;background:#f8f4ef}.services h2 em{color:#a17d92}.service-grid{margin-top:72px;border-top:1px solid #70647d66}.service-grid article{display:grid;grid-template-columns:12% 1fr auto;gap:24px;align-items:start;padding:39px 0;border-bottom:1px solid #70647d66}.service-number{font:700 .8rem 'Manrope',sans-serif;color:#977e9d}.service-grid h3{font:700 clamp(2rem,3.8vw,4rem)/1 'Manrope',sans-serif;letter-spacing:-.07em;margin:0 0 16px}.service-grid p{max-width:530px;color:#6d6674;line-height:1.55;font-size:1.04rem;margin:0}.service-arrow{font-size:2rem;font-weight:300;color:#8a7598}
.contact{padding:115px 6vw 130px;background:#554a68;color:#f7f3ee}.contact .section-label{color:#e2c7ce;margin-bottom:40px}.contact h2{font-size:clamp(3.6rem,7vw,8.4rem);line-height:1.04;margin-bottom:50px}.contact h2 em{color:#e1c4d0}.contact-button{background:#f6eee7;color:#514965}.contact-button:hover{background:#e8d5de;color:#514965}.footer{min-height:95px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 6vw;background:#453b55;color:#eee6eb;font-size:.76rem}.footer-brand{font:700 1rem 'Manrope',sans-serif;letter-spacing:.18em}
@media(max-width:1100px){.hero{grid-template-columns:54% 46%;min-height:680px}.hero h1{font-size:clamp(4.1rem,7vw,5.8rem)}.hero-copy{padding-left:5vw;padding-right:3vw}.hero-description{font-size:1rem}.hero-footnote{left:5vw}.header nav{gap:18px}.compare{font-size:.7rem}}
@media(max-width:750px){.header{height:70px;padding:0 5vw}.header nav{display:none}.brand{font-size:1.1rem}.brand-icon{height:33px;width:33px}.brand-icon img{height:21px;width:21px}.compare{font-size:.7rem}.hero{display:block;min-height:0;height:max(700px,calc(100svh - 70px));position:relative;background:#666487}.hero-image{position:absolute;inset:0;min-height:0;background-position:center 38%}.hero-image:after{background:linear-gradient(180deg,rgba(31,29,54,.09) 5%,rgba(42,36,66,.03) 27%,rgba(43,36,65,.72) 75%,rgba(36,32,57,.91) 100%)}.hero-copy{position:relative;z-index:2;height:100%;background:none;color:#fff;justify-content:flex-end;padding:32px 6vw 55px}.eyebrow{font-size:.6rem;color:#f9edf4;margin-bottom:24px;max-width:300px}.eyebrow-line{background:#fff}.hero h1{font-size:clamp(3.8rem,11vw,6.8rem);letter-spacing:-.08em;margin-bottom:20px}.hero h1 em{color:#ffe4eb}.hero h1 .period{color:#e7c5b7}.hero-description{color:#fff;max-width:360px;font-size:1rem;margin-bottom:22px}.primary-button{background:#f8f2eb;color:#514965}.primary-button:hover{background:#eadbe5}.hero-footnote{display:none}.image-caption{display:none}.intro{display:block;padding:80px 6vw}.intro .section-label{margin-bottom:26px}.intro h2,.section-top h2,.services h2{font-size:clamp(2.8rem,9vw,4.2rem)}.intro-body p{font-size:1.06rem;margin-top:26px}.projects,.services{padding:82px 6vw}.section-top{display:block;margin-bottom:35px}.section-top>p{margin-top:25px}.project-grid{grid-template-columns:1fr;gap:46px}.project-image{height:360px}.project-note{margin-top:45px}.service-grid{margin-top:50px}.service-grid article{grid-template-columns:40px 1fr 25px;gap:12px;padding:30px 0}.service-grid h3{font-size:clamp(1.7rem,7vw,2.6rem)}.service-grid p{font-size:.97rem}.contact{padding:85px 6vw 100px}.contact h2{font-size:clamp(3.3rem,10vw,5.6rem)}.footer{flex-wrap:wrap}}
@media(max-width:390px){.hero{height:max(650px,calc(100svh - 70px))}.hero h1{font-size:clamp(3.35rem,11vw,4rem)}.hero-copy{padding-bottom:37px}.hero-description{font-size:.94rem}.project-image{height:290px}.footer{font-size:.69rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Desktop uses its own panoramic sky; the supplied portrait photo stays on mobile. */
@media(min-width:751px){
  .hero{position:relative;isolation:isolate;display:block;min-height:clamp(680px,calc(100svh - 88px),900px);background:#545579 url('assets/cloud-moon-wide.webp') center center/cover no-repeat}
  .hero:before{content:'';position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(28,28,53,.69) 0%,rgba(36,35,66,.43) 36%,rgba(40,39,72,.1) 68%,transparent 100%);pointer-events:none}
  .hero-copy{min-height:inherit;width:min(730px,62%);padding:58px 5vw 76px;background:transparent;color:#fff}
  .hero-image{display:none}
  .hero h1{font-size:clamp(4.4rem,7vw,8.4rem)}
  .hero h1 em{color:#f6d9e1}
  .hero h1 .period{color:#e8bdad}
  .hero-description{color:#fff;font-weight:500}
  .eyebrow{color:#f4e6ef}
  .eyebrow-line{background:#f4e6ef}
  .primary-button{background:#f7f0e9;color:#4b3d64}
  .primary-button:hover{background:#e8dbe8;color:#4b3d64}
  .hero-footnote{color:#f2e6f1;left:5vw}
}
@media(min-width:751px) and (max-width:1100px){.hero-copy{width:65%}.hero h1{font-size:clamp(4.1rem,7vw,5.7rem)}}
