*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090c0d;color:#f4f1e9;font-family:"DM Sans",Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.site-header{height:78px;position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(8,11,12,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.logo{font-size:20px;letter-spacing:4px;font-weight:600}.logo-image{display:flex;align-items:center;width:190px;height:48px}.logo-image img{display:block;width:190px;height:auto;max-height:46px;object-fit:contain;object-position:left center}.logo span{font-weight:400;color:#2F8FD8}.nav{display:flex;gap:30px;font-size:13px;color:#c6c5c0}.nav a:hover{color:#fff}.header-cta{border:1px solid #2F8FD8;padding:10px 17px;font-size:12px}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{min-height:94vh;position:relative;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:url("images/hero.jpg");background-position:center 35%;background-size:cover;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(100deg,rgba(5,8,9,.95) 0%,rgba(5,8,9,.65) 44%,rgba(5,8,9,.12) 100%)}.hero-content{position:relative;z-index:2;width:min(760px,88%);margin-left:8vw;padding-top:70px}.eyebrow{font-size:10px;letter-spacing:3px;color:#2F8FD8;font-weight:600;margin:0 0 16px}.hero h1,h2{font-family:"Playfair Display",Georgia,serif;font-weight:500;line-height:1.04}.hero h1{font-size:clamp(50px,7vw,94px);margin:0 0 25px}.hero-content>p:not(.eyebrow){font-size:17px;color:#d0d0cc;max-width:630px}.hero-buttons{display:flex;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:13px 20px;border:1px solid transparent;cursor:pointer;font-size:13px;font-weight:600}.button span{font-size:18px}.button-light{background:#f0eee7;color:#111}.button-outline{border-color:#aaa;color:#fff}.button-gold{background:#2F8FD8;color:#111;width:100%;padding:15px}.scroll-note{position:absolute;bottom:25px;left:8vw;font-size:10px;letter-spacing:2px;color:#aaa}.section{padding:110px 7vw}.services{background:#101415}.section-heading{display:flex;justify-content:space-between;gap:50px;margin-bottom:55px;align-items:end}.section h2{font-size:clamp(40px,5vw,68px);margin:0}.section-lead,.portfolio-intro{max-width:430px;color:#aeb2b0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#303536}.service-card{background:#101415;padding:36px;min-height:260px}.service-number{color:#2F8FD8;font-size:12px}.service-card h3{font-family:"Playfair Display",serif;font-size:27px;font-weight:500}.service-card p{color:#aeb2b0}.portfolio{background:#090c0d}.portfolio-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:35px}.filters{display:flex;gap:8px;margin-bottom:35px;flex-wrap:wrap}.filter{background:none;border:1px solid #333938;color:#aaa;padding:9px 17px;font-size:11px;cursor:pointer}.filter.active,.filter:hover{border-color:#2F8FD8;color:#2F8FD8}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:45px 28px}.project-image{height:390px;display:block;position:relative;overflow:hidden;background:#151a1a}.project-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s ease}.project:hover .project-image img{transform:scale(1.035)}.view-project{position:absolute;right:15px;bottom:15px;padding:8px 12px;background:rgba(7,9,10,.78);font-size:9px;letter-spacing:1px;opacity:0;transition:.25s}.project:hover .view-project{opacity:1}.project-meta{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #2a2e2f}.project-no{font-size:9px;color:#2F8FD8;letter-spacing:1.5px}.project-meta h3{font-family:"Playfair Display",serif;font-weight:500;font-size:23px;margin:4px 0}.project-meta p{font-size:11px;color:#858b88;margin:0}.project-index{color:#555;font-size:12px}.about{display:grid;grid-template-columns:1.05fr 1fr;gap:75px;align-items:center;background:#121718}.about-image{height:590px;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy>p:not(.eyebrow){color:#b8bbb8;max-width:580px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.stats strong{display:block;font-size:28px;color:#2F8FD8}.stats span{font-size:10px;color:#858b88}.process{background:#0e1213}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #343938}.process-grid>div{padding:35px 30px;border-right:1px solid #343938}.process-grid>div:last-child{border-right:0}.process-grid span{color:#2F8FD8;font-size:11px}.process-grid h3{font-family:"Playfair Display",serif;font-size:26px;font-weight:500}.process-grid p{color:#909694;font-size:13px}.partnership{padding:120px 7vw;background:linear-gradient(110deg,#171c1c,#0f1314);text-align:center}.partnership>div{max-width:760px;margin:auto}.partnership h2{font-size:clamp(48px,6vw,82px);margin:0 0 20px}.partnership>div>p:not(.eyebrow){color:#aeb2b0;margin:0 auto 32px;max-width:650px}.testimonials{background:#101415}.testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#333}.testimonial-grid blockquote{margin:0;background:#101415;padding:38px;font-family:"Playfair Display",serif;font-size:19px;line-height:1.45;color:#e4e8ef}.testimonial-grid cite{display:block;margin-top:25px;font-family:"DM Sans",sans-serif;font-style:normal;font-size:10px;letter-spacing:1px;color:#2F8FD8}.contact{background:#090c0d;border-top:1px solid #2c3030}.contact-inner{width:min(1180px,86%);margin:auto;padding:110px 0;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-copy h2{font-size:clamp(50px,6vw,78px);margin:0 0 25px}.contact-copy>p:not(.eyebrow){color:#adb2af;max-width:530px}.contact-details{margin-top:45px;display:grid;gap:20px}.contact-details a,.contact-details div{display:flex;flex-direction:column}.contact-details small{font-size:9px;letter-spacing:2px;color:#2F8FD8}.contact-details strong{font-size:14px;font-weight:500}.contact-form{display:grid;gap:18px;align-content:start}.contact-form label{font-size:11px;color:#b9bcb9;display:grid;gap:7px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #303536;background:#111516;color:#eee;padding:13px 14px;outline:none}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#2F8FD8}.contact-form textarea{resize:vertical}.form-note{font-size:10px;color:#777c79;margin:0}.form-note code{color:#aaa}.footer{border-top:1px solid #282d2d;padding:45px 7vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:30px}.footer p{font-size:9px;letter-spacing:2px;color:#777;margin:8px 0 0}.footer-links{display:flex;gap:22px;font-size:11px;color:#999}.copyright{text-align:right;color:#666;font-size:10px}@media(max-width:850px){.nav,.header-cta{display:none}.menu-toggle{display:block}.site-header{padding:0 5vw}.nav.open{display:flex;position:absolute;top:78px;left:0;right:0;padding:25px 7vw;background:#0b0e0f;flex-direction:column;gap:18px}.section{padding:80px 6vw}.service-grid,.about,.contact-inner,.project-grid,.testimonial-grid{grid-template-columns:1fr}.portfolio-top,.section-heading{display:block}.portfolio-intro,.section-lead{margin-top:20px}.project-image{height:330px}.about-image{height:400px}.contact-inner{gap:55px}.footer{grid-template-columns:1fr;align-items:start}.footer-links{flex-wrap:wrap}.copyright{text-align:left}.hero-content{margin-left:6vw}.hero h1{font-size:52px}.process-grid{grid-template-columns:1fr}.process-grid>div{border-right:0;border-bottom:1px solid #343938}}
.project-modal{position:fixed;inset:0;z-index:100;display:none}.project-modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(8px)}.modal-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1120px,92vw);height:min(88vh,820px);overflow:auto;background:#111516;border:1px solid #343938;display:grid;grid-template-columns:1.15fr .85fr}.modal-close{position:absolute;right:18px;top:12px;z-index:3;background:rgba(8,10,10,.7);border:1px solid #555;color:#fff;width:40px;height:40px;font-size:27px;cursor:pointer}.modal-gallery{background:#080a0b;padding:25px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-content:start}.modal-gallery img{width:100%;display:block;max-height:360px;object-fit:cover}.modal-gallery img:first-child{grid-column:1/-1;max-height:500px}.modal-content{padding:65px 45px}.modal-content h2{font-size:clamp(38px,4vw,58px);margin:0 0 8px}.modal-location{color:#2F8FD8;font-size:13px;margin:0 0 25px}.modal-content>p:not(.eyebrow):not(.modal-location){color:#aeb2b0}.modal-meta{display:grid;gap:15px;border-top:1px solid #343938;border-bottom:1px solid #343938;padding:22px 0;margin:35px 0}.modal-meta div{display:flex;flex-direction:column}.modal-meta small{font-size:9px;letter-spacing:2px;color:#2F8FD8}.modal-meta strong{font-size:13px;font-weight:500}.modal-content .button{margin-top:8px}@media(max-width:850px){.modal-panel{grid-template-columns:1fr;width:94vw;height:92vh}.modal-gallery{grid-template-columns:1fr;padding:15px}.modal-gallery img:first-child{grid-column:auto}.modal-gallery img{max-height:330px}.modal-content{padding:35px 25px}.modal-content h2{font-size:40px}}

@media(max-width:850px){.logo-image{width:165px}.logo-image img{width:165px;max-height:42px}}

/* Archmix3D brand accents */
.filter.active,.filter:hover{border-color:#E83E78;color:#E83E78}
.eyebrow{background:linear-gradient(90deg,#E83E78,#2F8FD8);-webkit-background-clip:text;background-clip:text;color:transparent}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#2F8FD8}
.project:hover .project-image{outline:1px solid rgba(47,143,216,.45)}

/* Platform credibility strip */
.credibility-strip {
  width: 100%;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.018);
}
.credibility-inner {
  max-width: 1200px;
  margin: 0 auto;
  min-height: 74px;
  padding: 16px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  flex-wrap: wrap;
  text-align: center;
}
.credibility-label {
  font-size: 10px;
  letter-spacing: .18em;
  font-weight: 700;
  opacity: .55;
}
.credibility-item {
  font-size: 14px;
  letter-spacing: .01em;
  color: rgba(255,255,255,.82);
}
.credibility-item strong:first-child {
  color: #2F8FD8;
}
.credibility-item:nth-of-type(4) strong {
  color: #E83E78;
}
.credibility-divider {
  opacity: .25;
}
@media (max-width: 600px) {
  .credibility-inner {
    gap: 10px 14px;
    min-height: 88px;
  }
  .credibility-divider {
    display: none;
  }
  .credibility-label {
    width: 100%;
  }
}

/* Easy-edit testimonial cards */
.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px 32px;
}
.testimonial-card {
  min-width: 0;
}
.testimonial-bubble {
  position: relative;
  padding: 32px 30px 36px;
  border-radius: 28px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.08);
}
.testimonial-bubble::after {
  content: "";
  position: absolute;
  left: 28px;
  bottom: -20px;
  width: 34px;
  height: 34px;
  background: rgba(255,255,255,.055);
  border-left: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
  transform: skewY(-35deg) rotate(-8deg);
}
.testimonial-bubble p {
  margin: 0;
  line-height: 1.7;
}
.testimonial-author {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 28px 0 0 28px;
}
.testimonial-line {
  width: 58px;
  height: 2px;
  flex: 0 0 58px;
  background: linear-gradient(90deg, #2F8FD8, #E83E78);
}
.testimonial-name {
  font-weight: 600;
}
.testimonial-location {
  opacity: .55;
  margin-top: 4px;
  font-size: .92em;
}
@media (max-width: 760px) {
  .testimonials-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

.testimonial-grid blockquote cite span {
  display: block;
  font-weight: 400;
  opacity: .55;
  margin-top: 4px;
}

/* Project budget & timeline fields */
.budget-timeline-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.budget-timeline-row select {
  width: 100%;
  appearance: auto;
}
@media (max-width: 700px) {
  .budget-timeline-row {
    grid-template-columns: 1fr;
  }
}
