*{box-sizing:border-box}
:root{
  --ink:#171714;
  --paper:#f2eee6;
  --cream:#e9e2d5;
  --muted:#9f9b92;
  --line:rgba(23,23,20,.18);
}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:var(--paper);
  font-family:"DM Sans",sans-serif;
  font-weight:300;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,select{font:inherit}
::selection{background:#171714;color:#fff}

.site-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:30;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:22px 34px;
  color:#fff;
  transition:.35s ease;
}
.site-header.scrolled{
  background:rgba(242,238,230,.94);
  color:var(--ink);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.brand,.footer-brand{display:flex;align-items:baseline;gap:9px;letter-spacing:-.02em}
.brand-kicker{font-size:11px;letter-spacing:.28em;font-weight:600}
.brand-main{font-family:"Italiana",serif;font-size:26px}
.site-nav{display:flex;align-items:center;gap:26px;font-size:13px}
.site-nav>a:not(.nav-cta){opacity:.86}
.site-nav>a:hover{opacity:1}
.nav-cta{border:1px solid currentColor;padding:11px 15px}
.menu-toggle{display:none;background:none;border:0;padding:8px;color:inherit}
.menu-toggle span{display:block;width:26px;height:1px;background:currentColor;margin:6px 0}

.hero{
  position:relative;
  height:100svh;
  min-height:680px;
  color:#fff;
  overflow:hidden;
}
.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}
.hero-slide{
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.04);
  transition:opacity 1.2s ease,transform 7s ease;
}
.hero-slide.active{opacity:1;transform:scale(1)}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.60),rgba(0,0,0,.13) 58%,rgba(0,0,0,.16))}
.hero-content{
  position:absolute;
  left:7vw;
  bottom:12vh;
  width:min(760px,78vw);
  z-index:2;
}
.eyebrow{
  margin:0 0 20px;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:10px;
  font-weight:600;
}
.eyebrow.dark{color:#66625b}
h1,h2,h3{font-family:"Italiana",serif;font-weight:400;margin:0}
h1{font-size:clamp(64px,8.7vw,150px);line-height:.84;letter-spacing:-.045em}
h1 em{font-weight:400}
.hero-copy{max-width:490px;font-size:17px;line-height:1.65;margin:31px 0 28px;color:rgba(255,255,255,.84)}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.13em;transition:.25s ease}
.btn-light{background:#fff;color:#111}
.btn-light:hover{transform:translateY(-2px);background:var(--cream)}
.btn-dark{background:var(--ink);color:#fff}
.btn-outline{border:1px solid var(--ink)}
.text-link{font-size:12px;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid currentColor;padding-bottom:4px}
.text-link.light{color:#fff}
.hero-side-note{
  position:absolute;
  z-index:2;
  right:30px;
  top:50%;
  transform:translateY(-50%) rotate(90deg);
  transform-origin:center;
  display:flex;
  gap:26px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:9px;
}
.hero-index{
  position:absolute;
  z-index:2;
  right:35px;
  bottom:32px;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:10px;
  letter-spacing:.12em;
}
.hero-line{width:52px;height:1px;background:rgba(255,255,255,.55)}

.statement{
  display:grid;
  grid-template-columns:80px 1.25fr 1fr;
  gap:6vw;
  padding:145px 7vw;
  align-items:end;
}
.section-number{font-size:10px;letter-spacing:.18em;color:#77746d;align-self:start;padding-top:6px}
.statement h2,.about h2,.contact h2,.search-shell h2{font-size:clamp(52px,6vw,96px);line-height:.92;letter-spacing:-.035em}
.statement-copy{font-size:16px;line-height:1.8;max-width:500px;margin:0 0 5px}

.search-section{
  position:relative;
  min-height:760px;
  background:#151512;
  color:#fff;
  padding:110px 7vw;
  overflow:hidden;
}
.search-backdrop{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 82% 25%,rgba(255,255,255,.07),transparent 30%),
    linear-gradient(120deg,transparent 0 65%,rgba(255,255,255,.035) 65% 66%,transparent 66%);
}
.search-shell{position:relative;z-index:1;max-width:1180px;margin:0 auto}
.search-shell h2{font-size:clamp(58px,7.6vw,120px)}
.search-intro{max-width:520px;line-height:1.7;color:#bdb9b1;margin:28px 0 52px}
.home-search{
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr auto;
  border-top:1px solid rgba(255,255,255,.23);
  border-bottom:1px solid rgba(255,255,255,.23);
}
.home-search label{padding:22px 22px 22px 0;border-right:1px solid rgba(255,255,255,.18)}
.home-search label+label{padding-left:22px}
.home-search label span{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:#8e8a82;margin-bottom:11px}
.home-search select{
  width:100%;
  background:transparent;
  color:#fff;
  border:0;
  outline:0;
  appearance:none;
  font-family:"Italiana",serif;
  font-size:23px;
  cursor:pointer;
}
.home-search select option{color:#111}
.search-submit{
  min-width:185px;
  border:0;
  background:#e8e1d4;
  color:#171714;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  padding:0 24px;
  cursor:pointer;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
}
.search-submit:hover{background:#fff}
.search-note{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#6f6d67;margin-top:15px}

.editorial-grid{display:grid;grid-template-columns:1fr 1fr;min-height:720px}
.editorial-card{position:relative;padding:70px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.image-card{background-size:cover;background-position:center;color:#fff}
.card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.65),rgba(0,0,0,.04))}
.card-content{position:relative;z-index:1;max-width:520px}
.editorial-card h3{font-size:clamp(47px,5vw,78px);line-height:.96}
.editorial-card p:not(.eyebrow){max-width:460px;line-height:1.7;margin:23px 0}
.text-card{background:#d8d0c2}
.big-mark{position:absolute;top:-70px;right:-20px;font-family:"Italiana";font-size:470px;line-height:1;color:rgba(23,23,20,.045)}

.about{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:8vw;
  padding:145px 7vw;
  align-items:center;
}
.about-photo-wrap{position:relative}
.about-photo{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.8)}
.about-badge{
  position:absolute;
  right:-45px;
  bottom:45px;
  width:130px;height:130px;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
  display:grid;
  place-items:center;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.12em;
  line-height:1.6;
  font-size:9px;
}
.about-copy{max-width:660px}
.lede{font-family:"Italiana";font-size:28px!important;line-height:1.4!important}
.about-copy>p:not(.eyebrow){line-height:1.85;font-size:15px;color:#4d4a45}
.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px;padding-top:28px;border-top:1px solid var(--line)}
.credentials strong{display:block;font-family:"Italiana";font-size:24px;margin-bottom:6px}
.credentials span{font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.09em;color:#6d6962}

.quote-section{background:#bfb29f;padding:120px 8vw;text-align:center}
.quote-section p{font-family:"Italiana";font-size:clamp(45px,6vw,92px);line-height:1.05;max-width:1160px;margin:0 auto 25px}
.quote-section span{font-size:10px;letter-spacing:.17em;text-transform:uppercase}

.contact{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:7vw;
  padding:130px 7vw;
  background:#f6f2ea;
}
.contact-details{display:flex;flex-direction:column;gap:13px;font-size:14px;line-height:1.6;padding-top:35px}
.contact-details a{font-size:17px}
.contact-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px}
footer{
  background:#151512;
  color:#fff;
  padding:55px 7vw 35px;
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:50px;
  align-items:start;
}
.footer-brokerage img{max-width:210px;max-height:70px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);opacity:.9}
.footer-brokerage p,.copyright{font-size:9px;color:#88847d;line-height:1.6;text-transform:uppercase;letter-spacing:.1em}
.footer-social{display:flex;flex-direction:column;gap:10px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:22px;margin-top:20px}

.cursor-glow{
  position:fixed;
  width:320px;height:320px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.075),transparent 65%);
  pointer-events:none;
  z-index:3;
  transform:translate(-50%,-50%);
  opacity:0;
  transition:opacity .2s;
}

@media (max-width: 900px){
  .site-header{padding:18px 20px}
  .menu-toggle{display:block;position:relative;z-index:42}

  /* Fully remove the mobile menu from interaction/visibility until opened.
     This avoids fixed-position/backdrop-filter quirks on mobile browsers. */
  .site-nav{
    position:fixed;
    inset:0;
    z-index:40;
    min-height:100dvh;
    background:var(--ink);
    color:#fff;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:25px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-18px);
    transition:opacity .28s ease, transform .35s ease, visibility 0s linear .35s;
  }
  .site-nav.open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
    transition:opacity .28s ease, transform .35s ease, visibility 0s;
  }
  .site-nav a{font-family:"Italiana";font-size:34px!important}
  .site-nav .nav-cta{
    font-family:"DM Sans";
    font-size:11px!important;
    margin-top:10px;
    padding:14px 18px;
  }

  /* Keep the header itself above normal page content, but below the open menu. */
  .site-header.scrolled{backdrop-filter:none}
  .site-header:has(.site-nav.open){
    color:#fff;
    background:transparent;
    border-bottom-color:transparent;
  }
  .hero-content{left:22px;bottom:12vh;width:calc(100% - 44px)}
  .hero-copy{font-size:15px}
  .hero-side-note{display:none}
  .hero-index{right:20px}
  .statement{grid-template-columns:1fr;padding:95px 22px;gap:35px}
  .section-number{display:none}
  .home-search{grid-template-columns:1fr}
  .home-search label,.home-search label+label{border-right:0;border-bottom:1px solid rgba(255,255,255,.16);padding:20px 0}
  .search-submit{min-height:68px;padding:0}
  .search-section{padding:90px 22px}
  .editorial-grid{grid-template-columns:1fr}
  .editorial-card{min-height:630px;padding:38px 24px}
  .about{grid-template-columns:1fr;padding:95px 22px;gap:70px}
  .about-badge{right:14px;bottom:-40px}
  .credentials{grid-template-columns:1fr}
  .quote-section{padding:90px 22px}
  .contact{grid-template-columns:1fr;padding:95px 22px;gap:30px}
  .contact-details{padding-top:0}
  footer{grid-template-columns:1fr;padding:55px 22px 28px}
}

@media (max-width: 520px){
  .brand-main{font-size:22px}
  h1{font-size:61px}
  .hero{min-height:660px}
  .hero-actions{align-items:flex-start;flex-direction:column}
  .statement h2,.about h2,.contact h2,.search-shell h2{font-size:52px}
  .editorial-card h3{font-size:48px}
  .lede{font-size:24px!important}
}



/* ------------------------------
   HOMEPAGE TESTIMONIAL TEASE
------------------------------ */
.about-more{display:inline-block;margin-top:34px}
.testimonial-tease{
  padding:120px 7vw;
  background:#e8e1d4;
  text-align:center;
}
.testimonial-tease blockquote{
  font-family:"Italiana",serif;
  font-size:clamp(48px,6.2vw,92px);
  line-height:1;
  max-width:1020px;
  margin:0 auto 24px;
}
.testimonial-tease>p:not(.eyebrow){
  max-width:560px;
  margin:0 auto 32px;
  line-height:1.7;
  color:#5f5a53;
}

/* ------------------------------
   INNER PAGE SHARED
------------------------------ */
.inner-page{background:var(--paper)}
.inner-header{
  position:relative;
  color:var(--ink);
  background:var(--paper);
  border-bottom:1px solid var(--line);
}
.inner-header.scrolled{
  position:fixed;
  top:0;
  background:rgba(242,238,230,.96);
}

/* ------------------------------
   ABOUT PAGE
------------------------------ */
.about-cinematic{
  position:relative;
  height:calc(100svh - 82px);
  min-height:700px;
  color:#fff;
  overflow:hidden;
}
.about-cinematic-image{
  position:absolute; inset:0;
  background:url("../assets/images/hero/hero-1.webp") center 52%/cover no-repeat;
  transform:scale(1.01);
}
.about-cinematic-shade{
  position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.12) 67%,rgba(0,0,0,.24));
}
.about-cinematic-copy{
  position:absolute;
  z-index:2;
  left:7vw;
  bottom:10vh;
  width:min(850px,80vw);
}
.about-cinematic-copy h1{
  font-size:clamp(72px,9vw,145px);
  line-height:.84;
}
.about-cinematic-copy>p:last-child{
  max-width:520px;
  margin-top:30px;
  line-height:1.7;
  color:rgba(255,255,255,.8);
}
.vertical-signature{
  position:absolute;
  z-index:2;
  right:30px;
  top:50%;
  transform:rotate(90deg) translateX(50%);
  transform-origin:right top;
  font-size:9px;
  letter-spacing:.2em;
}

.about-editorial-intro{
  display:grid;
  grid-template-columns:150px 1.15fr .85fr;
  gap:5vw;
  padding:145px 7vw 155px;
  align-items:start;
}
.about-intro-label{
  display:flex;
  align-items:center;
  gap:14px;
  padding-top:11px;
  font-size:9px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#6f6a62;
}
.mini-line{width:35px;height:1px;background:#8f8a82}
.about-intro-title h2{
  font-family:"Italiana";
  font-size:clamp(62px,7vw,105px);
  font-weight:400;
  line-height:.9;
  margin:0;
}
.about-intro-body{padding-top:8px}
.about-intro-body p{line-height:1.85;color:#4e4a44}
.about-intro-body .lead-paragraph{
  font-family:"Italiana";
  font-size:30px;
  line-height:1.4;
  color:var(--ink);
  margin-top:0;
}

.about-collage{
  position:relative;
  min-height:940px;
  background:#d7cec0;
  overflow:hidden;
}
.about-collage-main{
  position:absolute;
  left:7vw; top:90px;
  width:42vw;
  max-width:620px;
}
.about-collage-main img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
}
.about-collage-small{
  position:absolute;
  right:7vw;
  top:80px;
  width:33vw;
  height:360px;
  background-size:cover;
  background-position:center;
}
.about-collage-note{
  position:absolute;
  right:8vw;
  top:495px;
  width:31vw;
}
.about-collage-note p{
  font-family:"Italiana";
  font-size:clamp(36px,4vw,62px);
  line-height:1.06;
  margin:0;
}
.about-collage-stamp{
  position:absolute;
  left:44vw;
  bottom:70px;
  width:180px;height:180px;
  border-radius:50%;
  background:#171714;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
}
.about-collage-stamp span{
  font-family:"Italiana";
  font-size:48px;
}
.about-collage-stamp small{
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:9px;
  line-height:1.5;
}

.about-manifesto{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:9vw;
  padding:150px 7vw;
  background:#171714;
  color:#fff;
}
.manifesto-left h2{
  font-family:"Italiana";
  font-size:clamp(60px,6.7vw,104px);
  line-height:.92;
  font-weight:400;
  margin:0;
}
.manifesto-right{
  padding-top:42px;
  max-width:680px;
}
.manifesto-right p{
  line-height:1.9;
  color:#bcb6ac;
}
.manifesto-right blockquote{
  font-family:"Italiana";
  font-size:38px;
  line-height:1.35;
  margin:48px 0 0;
  padding-top:34px;
  border-top:1px solid rgba(255,255,255,.18);
}

.design-eye{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  min-height:780px;
}
.design-eye-image{
  background-size:cover;
  background-position:center;
}
.design-eye-panel{
  background:#efe9df;
  padding:85px 6vw;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.design-eye-index{
  font-size:9px;
  letter-spacing:.18em;
  margin-bottom:55px;
  color:#777169;
}
.design-eye-panel h2{
  font-family:"Italiana";
  font-size:clamp(50px,5.5vw,84px);
  font-weight:400;
  line-height:.96;
  margin:0 0 30px;
}
.design-eye-panel p{
  max-width:550px;
  line-height:1.85;
  color:#514d47;
  margin-bottom:32px;
}

.about-milestones{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:9vw;
  padding:130px 7vw;
}
.milestone-heading h2{
  font-family:"Italiana";
  font-size:clamp(56px,6vw,92px);
  line-height:.94;
  font-weight:400;
  margin:0;
}
.milestone-list{border-top:1px solid var(--line)}
.milestone-row{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:30px;
  padding:31px 0;
  border-bottom:1px solid var(--line);
  align-items:center;
}
.milestone-row span{
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#777169;
}
.milestone-row strong{
  font-family:"Italiana";
  font-size:30px;
  font-weight:400;
}

.about-final{
  position:relative;
  min-height:720px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.32)),
    url("../assets/images/hero/hero-4.webp") center/cover;
  color:#fff;
  display:flex;
  align-items:end;
}
.about-final-copy{
  padding:95px 7vw;
  max-width:1100px;
}
.about-final h2{
  font-family:"Italiana";
  font-size:clamp(56px,6.3vw,98px);
  line-height:.96;
  font-weight:400;
  margin:0 0 38px;
}
.about-final-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}

/* ------------------------------
   TESTIMONIALS PAGE
------------------------------ */
.testimonials-cinematic{
  position:relative;
  height:calc(92svh - 82px);
  min-height:650px;
  color:#fff;
  overflow:hidden;
}
.testimonials-bg{
  position:absolute;inset:0;
  background:url("../assets/images/hero/hero-2.webp") center/cover no-repeat;
}
.testimonials-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.73),rgba(0,0,0,.12) 68%);
}
.testimonials-hero-copy{
  position:absolute;
  left:7vw;
  bottom:10vh;
  z-index:2;
  width:min(900px,80vw);
}
.testimonials-hero-copy h1{
  font-size:clamp(70px,8.8vw,140px);
  line-height:.85;
}
.testimonials-hero-copy>p:last-child{
  max-width:520px;
  margin-top:28px;
  line-height:1.7;
  color:rgba(255,255,255,.8);
}
.testimonial-count{
  position:absolute;
  z-index:2;
  right:35px;
  bottom:35px;
  font-size:9px;
  letter-spacing:.2em;
}

.story-block{
  display:grid;
  grid-template-columns:100px 1fr .9fr;
  gap:5vw;
  padding:135px 7vw;
  border-bottom:1px solid var(--line);
}
.story-meta{
  display:flex;
  flex-direction:column;
  gap:12px;
  font-size:9px;
  letter-spacing:.17em;
  color:#777169;
}
.story-quote blockquote{
  font-family:"Italiana";
  font-size:clamp(48px,5.5vw,86px);
  line-height:1.02;
  margin:0;
}
.story-copy p{
  margin-top:0;
  line-height:1.88;
  color:#4f4b45;
}
.story-copy cite,
.story-three-content cite{
  display:inline-block;
  margin-top:25px;
  font-style:normal;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.17em;
  font-weight:600;
}
.story-one{background:#f2eee6}
.story-two{background:#ddd4c7}

.testimonial-image-break{
  height:560px;
  background-size:cover;
  background-position:center 55%;
  position:relative;
}
.testimonial-image-break:after{
  content:"";
  position:absolute;inset:0;
  background:rgba(0,0,0,.24);
}
.testimonial-image-break>div{
  position:absolute;
  z-index:2;
  right:7vw;
  bottom:55px;
  color:#fff;
  text-align:right;
}
.testimonial-image-break span{
  display:block;
  text-transform:uppercase;
  letter-spacing:.19em;
  font-size:9px;
  margin-bottom:6px;
}
.testimonial-image-break strong{
  font-family:"Italiana";
  font-size:78px;
  font-weight:400;
}

.story-three{
  position:relative;
  min-height:860px;
  color:#fff;
  padding:0;
  display:block;
}
.story-three-image{
  position:absolute;inset:0;
  background-size:cover;
  background-position:center;
}
.story-three-image:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.79),rgba(0,0,0,.3) 66%);
}
.story-three-content{
  position:relative;
  z-index:2;
  width:min(760px,66vw);
  padding:120px 7vw;
}
.light-meta{color:rgba(255,255,255,.7);margin-bottom:42px}
.story-three-content blockquote{
  font-family:"Italiana";
  font-size:clamp(52px,6vw,88px);
  line-height:1.03;
  margin:0 0 38px;
}
.story-three-content p{
  line-height:1.9;
  color:rgba(255,255,255,.78);
}
.testimonials-closing{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:50px;
  padding:120px 7vw;
}
.testimonials-closing h2{
  font-family:"Italiana";
  font-size:clamp(55px,6vw,92px);
  line-height:.95;
  font-weight:400;
  margin:0;
}
.testimonials-closing-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

/* ------------------------------
   INNER PAGE MOBILE
------------------------------ */
@media (max-width:900px){
  .inner-header{position:relative}
  .inner-header.scrolled{position:fixed}

  .about-cinematic,
  .testimonials-cinematic{
    height:78svh;
    min-height:620px;
  }
  .about-cinematic-copy,
  .testimonials-hero-copy{
    left:22px;
    bottom:55px;
    width:calc(100% - 44px);
  }
  .about-cinematic-copy h1,
  .testimonials-hero-copy h1{font-size:62px}
  .vertical-signature,.testimonial-count{display:none}

  .about-editorial-intro{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:28px;
  }
  .about-intro-label{padding-top:0}
  .about-intro-title h2{font-size:58px}
  .about-intro-body .lead-paragraph{font-size:26px}

  .about-collage{
    min-height:980px;
  }
  .about-collage-main{
    left:22px;top:55px;
    width:72vw;
  }
  .about-collage-small{
    width:47vw;
    height:250px;
    right:22px;
    top:445px;
  }
  .about-collage-note{
    left:22px;
    right:auto;
    top:720px;
    width:72vw;
  }
  .about-collage-note p{font-size:40px}
  .about-collage-stamp{
    left:auto;
    right:22px;
    bottom:65px;
    width:130px;height:130px;
  }
  .about-collage-stamp span{font-size:38px}

  .about-manifesto{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:35px;
  }
  .manifesto-left h2{font-size:59px}
  .manifesto-right{padding-top:0}

  .design-eye{
    grid-template-columns:1fr;
    min-height:0;
  }
  .design-eye-image{min-height:480px}
  .design-eye-panel{padding:75px 22px}
  .design-eye-index{margin-bottom:34px}

  .about-milestones{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:55px;
  }
  .milestone-heading h2{font-size:58px}
  .milestone-row{grid-template-columns:105px 1fr}
  .milestone-row strong{font-size:24px}

  .about-final{min-height:650px}
  .about-final-copy{padding:70px 22px}
  .about-final h2{font-size:54px}

  .story-block{
    grid-template-columns:1fr;
    padding:85px 22px;
    gap:28px;
  }
  .story-meta{flex-direction:row}
  .story-quote blockquote{font-size:50px}
  .testimonial-image-break{height:430px}
  .testimonial-image-break>div{right:22px;bottom:30px}
  .testimonial-image-break strong{font-size:60px}

  .story-three{min-height:0}
  .story-three-image{position:absolute}
  .story-three-content{
    width:100%;
    padding:90px 22px;
  }
  .story-three-content blockquote{font-size:52px}

  .testimonials-closing{
    flex-direction:column;
    align-items:flex-start;
    padding:90px 22px;
  }
  .testimonials-closing h2{font-size:56px}
  .testimonials-closing-actions{justify-content:flex-start}
}

@media (max-width:520px){
  .about-cinematic-copy h1,
  .testimonials-hero-copy h1{font-size:54px}
  .about-intro-title h2,
  .manifesto-left h2,
  .milestone-heading h2{font-size:50px}
  .about-collage-main{width:78vw}
  .about-collage-small{top:430px;width:52vw}
  .about-collage-note{top:700px;width:78vw}
  .story-quote blockquote,
  .story-three-content blockquote{font-size:46px}
}


/* =========================================================
   V6 — COMMUNITIES, BUYERS + SELLERS
========================================================= */

/* Placeholder artwork */
.community-placeholder,
.community-detail-placeholder,
.service-hero-placeholder,
.buyer-vision-placeholder,
.marketing-placeholder{
  position:relative;
  overflow:hidden;
  background:#c9c0b3;
}
.community-placeholder::before,
.community-detail-placeholder::before,
.service-hero-placeholder::before,
.buyer-vision-placeholder::before,
.marketing-placeholder::before{
  content:"";
  position:absolute; inset:-20%;
  background:
    linear-gradient(120deg, transparent 32%, rgba(255,255,255,.18) 33%, transparent 34%),
    radial-gradient(circle at 70% 25%, rgba(255,255,255,.23), transparent 24%);
  transform:rotate(-5deg);
}
.placeholder-1{background:linear-gradient(135deg,#6c736d,#c8b9a6)}
.placeholder-2{background:linear-gradient(135deg,#454d50,#b5aca0)}
.placeholder-3{background:linear-gradient(135deg,#7d6e62,#d6c8b8)}
.placeholder-4{background:linear-gradient(135deg,#3e4642,#9c9184)}
.community-placeholder span,
.community-detail-placeholder>span,
.service-hero-placeholder>span,
.buyer-vision-placeholder>span,
.marketing-placeholder>span{
  position:absolute;
  left:22px; bottom:20px;
  z-index:2;
  font-size:8px;
  letter-spacing:.2em;
  color:rgba(255,255,255,.76);
}

/* Community directory */
.directory-hero{
  background:#171714;
  color:#fff;
  padding:140px 7vw 100px;
  display:grid;
  grid-template-columns:1.35fr .65fr;
  align-items:end;
  gap:8vw;
  min-height:650px;
}
.directory-hero h1{
  font-size:clamp(70px,9vw,142px);
  line-height:.85;
}
.directory-hero>p{
  max-width:430px;
  line-height:1.8;
  color:#bdb8ae;
}
.community-directory{
  display:grid;
  grid-template-columns:repeat(2,1fr);
}
.community-card{
  min-height:700px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-rows:1fr auto;
}
.community-card:nth-child(even){border-right:0}
.community-card .community-placeholder{
  min-height:430px;
  transition:transform .6s ease;
}
.community-card:hover .community-placeholder{transform:scale(.985)}
.community-card-copy{
  position:relative;
  padding:42px 4vw 50px;
}
.community-card-number{
  position:absolute;
  right:4vw;top:45px;
  font-size:9px;
  letter-spacing:.16em;
  color:#777169;
}
.community-card h2{
  font-size:clamp(44px,4.5vw,72px);
}
.community-card p{
  max-width:490px;
  min-height:52px;
  line-height:1.65;
  color:#5c5750;
}
.directory-cta{
  text-align:center;
  padding:120px 7vw;
  background:#ded5c8;
}
.directory-cta h2{
  font-family:"Italiana";
  font-size:clamp(55px,6vw,92px);
  font-weight:400;
  margin:0 0 20px;
}
.directory-cta>p:not(.eyebrow){
  max-width:620px;
  line-height:1.75;
  margin:0 auto 34px;
}

/* Community detail */
.community-detail-hero{
  position:relative;
  min-height:760px;
  color:#fff;
}
.community-detail-placeholder{position:absolute;inset:0}
.community-detail-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.12));
}
.community-detail-copy{
  position:absolute;
  z-index:2;
  left:7vw;bottom:80px;
  width:min(820px,80vw);
}
.community-detail-copy h1{
  font-size:clamp(78px,10vw,160px);
  line-height:.85;
}
.community-detail-copy>p:not(.eyebrow){
  max-width:590px;
  font-size:18px;
  line-height:1.6;
  margin:28px 0;
}
.community-overview{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9vw;
  padding:130px 7vw;
  align-items:end;
}
.community-overview h2{
  font-family:"Italiana";
  font-size:clamp(56px,6vw,94px);
  line-height:.94;
  font-weight:400;
  margin:0;
}
.community-overview>p{
  font-size:17px;
  line-height:1.85;
  color:#4d4943;
}
.community-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.community-facts>div{
  padding:48px 4vw;
  border-right:1px solid var(--line);
}
.community-facts>div:last-child{border-right:0}
.community-facts span{
  font-family:"Italiana";
  font-size:25px;
  line-height:1.3;
}
.community-highlights{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  padding:120px 7vw;
  gap:4vw;
}
.community-highlights article span{
  font-size:9px;
  letter-spacing:.15em;
  color:#777169;
}
.community-highlights h3{
  font-size:38px;
  margin:45px 0 20px;
}
.community-highlights p{line-height:1.8;color:#524e47}
.community-search-panel{
  background:#171714;
  color:#fff;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:8vw;
  padding:110px 7vw;
  align-items:end;
}
.community-search-panel h2{
  font-family:"Italiana";
  font-size:clamp(55px,6vw,95px);
  line-height:.93;
  font-weight:400;
  margin:0 0 25px;
}
.community-search-panel p{max-width:600px;line-height:1.8;color:#aaa59c}
.community-search-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:25px;
  padding-bottom:12px;
}
.community-disclaimer{
  padding:55px 7vw;
  display:flex;
  justify-content:space-between;
  gap:50px;
  align-items:center;
  font-size:10px;
  line-height:1.6;
  letter-spacing:.05em;
  color:#6d6860;
}
.community-disclaimer p{max-width:760px}

/* Shared service pages */
.service-hero{
  position:relative;
  min-height:790px;
  color:#fff;
}
.service-hero-placeholder{position:absolute;inset:0}
.service-hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.73),rgba(0,0,0,.12) 72%);
}
.service-hero-copy{
  position:absolute;
  z-index:2;
  left:7vw;bottom:80px;
  width:min(950px,84vw);
}
.service-hero-copy h1{
  font-size:clamp(72px,9vw,145px);
  line-height:.85;
}
.service-hero-copy>p:not(.eyebrow){
  max-width:560px;
  font-size:17px;
  line-height:1.7;
  margin:28px 0;
}
.service-intro{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9vw;
  padding:135px 7vw;
}
.service-index{
  display:block;
  font-size:9px;
  letter-spacing:.16em;
  color:#777169;
  margin-bottom:34px;
}
.service-intro h2,
.process-heading h2,
.seller-framework-title h2,
.marketing-copy h2,
.seller-value h2{
  font-family:"Italiana";
  font-size:clamp(55px,6vw,94px);
  line-height:.94;
  font-weight:400;
  margin:0;
}
.service-intro p{
  line-height:1.85;
  color:#4d4943;
}
.service-intro .lead-paragraph{
  font-family:"Italiana";
  font-size:30px;
  line-height:1.4;
  color:var(--ink);
  margin-top:0;
}
.process-section{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:8vw;
  padding:120px 7vw;
  background:#ddd4c7;
}
.process-heading{position:sticky;top:125px;align-self:start}
.process-list{border-top:1px solid rgba(23,23,20,.2)}
.process-list article{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:25px;
  padding:34px 0;
  border-bottom:1px solid rgba(23,23,20,.2);
}
.process-list article>span{
  font-size:9px;
  letter-spacing:.16em;
  padding-top:10px;
}
.process-list h3{font-size:34px}
.process-list p{line-height:1.75;color:#514c45;margin-bottom:0}
.buyer-vision{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  min-height:720px;
}
.buyer-vision-placeholder{min-height:600px}
.buyer-vision-copy{
  padding:80px 6vw;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.buyer-vision-copy h2{
  font-family:"Italiana";
  font-size:clamp(52px,5.8vw,88px);
  line-height:.96;
  font-weight:400;
  margin:0 0 26px;
}
.buyer-vision-copy p{line-height:1.85;color:#504b45}
.buyer-tools{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
}
.buyer-tools a{
  padding:55px 4vw;
  border-right:1px solid var(--line);
  transition:.25s ease;
}
.buyer-tools a:last-child{border-right:0}
.buyer-tools a:hover{background:#ddd4c7}
.buyer-tools span{
  display:block;
  font-family:"Italiana";
  font-size:30px;
  margin-bottom:10px;
}
.buyer-tools small{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:9px;
  color:#716c64;
}
.service-final{
  background:#171714;
  color:#fff;
  text-align:center;
  padding:125px 7vw;
}
.service-final h2{
  font-family:"Italiana";
  font-size:clamp(55px,6.4vw,98px);
  line-height:.96;
  font-weight:400;
  margin:0 auto 38px;
  max-width:1100px;
}

/* Seller page */
.seller-framework{
  background:#171714;
  color:#fff;
  padding:120px 7vw;
}
.seller-framework-title{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:8vw;
  align-items:end;
  padding-bottom:75px;
}
.seller-framework-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border-top:1px solid rgba(255,255,255,.18);
}
.seller-framework-grid article{
  padding:35px 24px 25px 0;
  border-right:1px solid rgba(255,255,255,.14);
  min-height:310px;
}
.seller-framework-grid article+article{padding-left:24px}
.seller-framework-grid article:last-child{border-right:0}
.seller-framework-grid span{
  font-size:9px;
  letter-spacing:.16em;
  color:#77746e;
}
.seller-framework-grid h3{
  font-size:37px;
  margin:55px 0 18px;
}
.seller-framework-grid p{
  line-height:1.7;
  color:#aaa59d;
  font-size:13px;
}
.marketing-showcase{
  display:grid;
  grid-template-columns:1fr .65fr .95fr;
  min-height:780px;
}
.marketing-placeholder{min-height:600px}
.marketing-copy{
  padding:75px 5vw;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#ded5c8;
}
.marketing-copy p{line-height:1.85;color:#504b45}
.seller-result{
  padding:110px 7vw;
  display:grid;
  grid-template-columns:.55fr 1.2fr .25fr;
  gap:6vw;
  align-items:end;
}
.result-stat{
  display:block;
  font-family:"Italiana";
  font-size:82px;
  line-height:1;
}
.result-label{
  display:block;
  margin-top:10px;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.15em;
}
.seller-result blockquote{
  font-family:"Italiana";
  font-size:clamp(38px,4.5vw,66px);
  line-height:1.08;
  margin:0;
}
.seller-result cite{
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:9px;
}
.seller-value{
  background:#c4b7a5;
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:8vw;
  padding:110px 7vw;
}
.seller-value>div{max-width:800px}
.seller-value p:not(.eyebrow){max-width:650px;line-height:1.8}

/* Mobile */
@media(max-width:900px){
  .directory-hero{
    grid-template-columns:1fr;
    padding:105px 22px 70px;
    min-height:620px;
    gap:38px;
  }
  .directory-hero h1{font-size:61px}
  .community-directory{grid-template-columns:1fr}
  .community-card{border-right:0;min-height:0}
  .community-card .community-placeholder{min-height:330px}
  .community-card-copy{padding:35px 22px 42px}
  .community-card-number{right:22px;top:38px}
  .directory-cta{padding:85px 22px}

  .community-detail-hero{min-height:680px}
  .community-detail-copy{left:22px;bottom:55px;width:calc(100% - 44px)}
  .community-detail-copy h1{font-size:65px}
  .community-overview{
    grid-template-columns:1fr;
    gap:35px;
    padding:90px 22px;
  }
  .community-facts{grid-template-columns:1fr}
  .community-facts>div{border-right:0;border-bottom:1px solid var(--line);padding:30px 22px}
  .community-highlights{grid-template-columns:1fr;padding:85px 22px;gap:55px}
  .community-highlights h3{margin-top:20px}
  .community-search-panel{
    grid-template-columns:1fr;
    padding:85px 22px;
    gap:45px;
  }
  .community-disclaimer{
    flex-direction:column;
    align-items:flex-start;
    padding:42px 22px;
    gap:18px;
  }

  .service-hero{min-height:690px}
  .service-hero-copy{left:22px;bottom:55px;width:calc(100% - 44px)}
  .service-hero-copy h1{font-size:59px}
  .service-intro{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:35px;
  }
  .process-section{
    grid-template-columns:1fr;
    padding:85px 22px;
  }
  .process-heading{position:static}
  .buyer-vision{grid-template-columns:1fr}
  .buyer-vision-placeholder{min-height:430px}
  .buyer-vision-copy{padding:70px 22px}
  .buyer-tools{grid-template-columns:1fr}
  .buyer-tools a{border-right:0;border-bottom:1px solid var(--line);padding:40px 22px}
  .service-final{padding:90px 22px}

  .seller-framework{padding:85px 22px}
  .seller-framework-title{grid-template-columns:1fr;gap:30px}
  .seller-framework-grid{grid-template-columns:1fr}
  .seller-framework-grid article,
  .seller-framework-grid article+article{
    min-height:0;
    padding:30px 0;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.14);
  }
  .seller-framework-grid h3{margin:22px 0 10px}
  .marketing-showcase{grid-template-columns:1fr}
  .marketing-placeholder{min-height:370px}
  .marketing-copy{padding:70px 22px}
  .seller-result{
    grid-template-columns:1fr;
    padding:85px 22px;
    gap:35px;
  }
  .result-stat{font-size:65px}
  .seller-value{
    flex-direction:column;
    align-items:flex-start;
    padding:85px 22px;
  }
}


/* V7 community artwork */
.community-card-photo{
  background-size:cover;
  background-position:center;
}
.community-card-photo::before{display:none}
.community-photo-hero{
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.10) 72%),
    var(--community-image);
  background-size:cover;
  background-position:center;
}
.community-photo-hero .community-detail-overlay{
  background:linear-gradient(90deg,rgba(0,0,0,.50),rgba(0,0,0,.05) 72%);
}
@media(max-width:900px){
  .community-photo-hero{background-position:center}
}


/* =========================================================
   V11 — DISTINCT ABOUT PROFILE PAGE
========================================================= */

.about-profile-page{background:#f2eee6}

.profile-hero{
  position:relative;
  min-height:860px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:5vw;
  padding:105px 7vw 80px;
  background:#f2eee6;
  overflow:hidden;
  align-items:end;
}
.profile-hero-copy{
  position:relative;
  z-index:2;
  padding-bottom:35px;
}
.profile-kicker{
  display:flex;
  justify-content:space-between;
  max-width:520px;
  margin-bottom:58px;
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:9px;
  color:#6f6a62;
}
.profile-hero h1{
  color:#171714;
  font-size:clamp(78px,8.7vw,142px);
  line-height:.82;
  letter-spacing:-.045em;
}
.profile-deck{
  max-width:470px;
  margin:35px 0 48px;
  font-family:"Italiana",serif;
  font-size:27px;
  line-height:1.35;
}
.profile-meta{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  padding-top:28px;
  border-top:1px solid var(--line);
}
.profile-meta>div{
  min-width:0;
}
.meta-label{
  display:block;
  margin-bottom:7px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:8px;
  color:#777169;
}
.profile-meta strong{
  font-size:12px;
  font-weight:500;
  line-height:1.45;
}
.profile-portrait-wrap{
  position:relative;
  z-index:2;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}
.profile-portrait-frame{
  width:100%;
  height:690px;
  background:#d7cec0;
  overflow:hidden;
}
.profile-portrait-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.profile-portrait-caption{
  display:flex;
  justify-content:space-between;
  padding-top:14px;
  font-size:9px;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.profile-hero-line{
  position:absolute;
  left:0;
  right:0;
  bottom:32px;
  height:1px;
  background:var(--line);
}

.profile-statement{
  display:grid;
  grid-template-columns:90px 1fr .9fr;
  gap:6vw;
  padding:140px 7vw;
  align-items:start;
}
.statement-index{
  font-size:9px;
  letter-spacing:.15em;
  color:#777169;
  padding-top:10px;
}
.statement-heading h2,
.profile-design-copy h2,
.profile-milestones-heading h2,
.profile-close h2{
  font-family:"Italiana";
  font-weight:400;
  font-size:clamp(56px,6vw,94px);
  line-height:.93;
  letter-spacing:-.035em;
  margin:0;
}
.statement-body .lead-paragraph{
  font-family:"Italiana";
  font-size:29px;
  line-height:1.4;
  color:#171714;
  margin-top:0;
}
.statement-body p{
  line-height:1.85;
  color:#4f4b45;
}

.profile-editorial-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  min-height:620px;
}
.profile-quote-panel,
.profile-role-panel{
  padding:60px 4vw;
}
.profile-quote-panel{
  background:#171714;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.profile-quote-panel blockquote{
  font-family:"Italiana";
  font-size:clamp(42px,4.2vw,66px);
  line-height:1.05;
  margin:50px 0;
}
.quote-credit{
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:9px;
  color:#aaa59d;
}
.profile-detail-image{
  min-height:620px;
}
.profile-detail-placeholder,
.profile-design-placeholder{
  width:100%;
  height:100%;
  background:
    linear-gradient(135deg,rgba(23,23,20,.18),rgba(23,23,20,.04)),
    repeating-linear-gradient(45deg,#d5ccbf 0 18px,#c8beb1 18px 36px);
  position:relative;
}
.profile-detail-placeholder span,
.profile-design-placeholder span{
  position:absolute;
  left:22px;
  bottom:20px;
  color:rgba(23,23,20,.62);
  font-size:8px;
  letter-spacing:.18em;
}
.profile-role-panel{
  background:#ded5c8;
}
.role-list{
  margin-top:65px;
  border-top:1px solid rgba(23,23,20,.2);
}
.role-list>div{
  display:grid;
  grid-template-columns:55px 1fr;
  gap:20px;
  padding:22px 0;
  border-bottom:1px solid rgba(23,23,20,.2);
  align-items:center;
}
.role-list span{
  font-size:8px;
  letter-spacing:.14em;
  color:#777169;
}
.role-list strong{
  font-family:"Italiana";
  font-size:29px;
  font-weight:400;
}

.profile-manifesto{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:9vw;
  padding:145px 7vw;
  background:#171714;
  color:#fff;
}
.profile-manifesto-title h2{
  font-family:"Italiana";
  font-size:clamp(58px,6.6vw,102px);
  line-height:.92;
  font-weight:400;
  margin:0;
}
.profile-manifesto-copy{
  padding-top:45px;
  max-width:680px;
}
.profile-manifesto-copy p{
  line-height:1.9;
  color:#bcb6ac;
}

.profile-design-section{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  min-height:760px;
}
.profile-design-copy{
  padding:85px 6vw;
  background:#efe9df;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.section-index{
  margin-bottom:55px;
  font-size:9px;
  letter-spacing:.18em;
  color:#777169;
}
.profile-design-copy p:not(.eyebrow){
  line-height:1.85;
  color:#514d47;
  margin:28px 0 34px;
}
.profile-design-art{
  min-height:760px;
}

.profile-milestones{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:9vw;
  padding:130px 7vw;
}
.profile-milestone-list{
  border-top:1px solid var(--line);
}
.profile-milestone-row{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:30px;
  padding:31px 0;
  border-bottom:1px solid var(--line);
  align-items:center;
}
.profile-milestone-row span{
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#777169;
}
.profile-milestone-row strong{
  font-family:"Italiana";
  font-size:30px;
  font-weight:400;
}

.profile-close{
  min-height:650px;
  display:flex;
  align-items:flex-end;
  background:#2a2925;
  color:#fff;
}
.profile-close-copy{
  padding:95px 7vw;
  max-width:1100px;
}
.profile-close h2{
  margin-bottom:38px;
}
.profile-close-actions{
  display:flex;
  align-items:center;
  gap:28px;
  flex-wrap:wrap;
}

@media(max-width:900px){
  .profile-hero{
    min-height:0;
    grid-template-columns:1fr;
    gap:42px;
    padding:90px 22px 55px;
    align-items:start;
  }
  .profile-kicker{
    margin-bottom:38px;
  }
  .profile-hero h1{
    font-size:62px;
  }
  .profile-deck{
    font-size:24px;
    margin:25px 0 34px;
  }
  .profile-meta{
    grid-template-columns:1fr;
    gap:18px;
  }
  .profile-portrait-frame{
    height:560px;
  }
  .profile-hero-line{
    bottom:20px;
  }

  .profile-statement{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:28px;
  }
  .statement-index{padding-top:0}

  .profile-editorial-grid{
    grid-template-columns:1fr;
  }
  .profile-detail-image{
    min-height:480px;
  }
  .profile-quote-panel,
  .profile-role-panel{
    padding:65px 22px;
  }

  .profile-manifesto{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:35px;
  }
  .profile-manifesto-copy{
    padding-top:0;
  }

  .profile-design-section{
    grid-template-columns:1fr;
  }
  .profile-design-copy{
    padding:75px 22px;
  }
  .profile-design-art{
    min-height:520px;
  }

  .profile-milestones{
    grid-template-columns:1fr;
    padding:90px 22px;
    gap:55px;
  }
  .profile-milestone-row{
    grid-template-columns:105px 1fr;
  }
  .profile-milestone-row strong{
    font-size:24px;
  }

  .profile-close{
    min-height:560px;
  }
  .profile-close-copy{
    padding:75px 22px;
  }
}

@media(max-width:520px){
  .profile-hero h1{
    font-size:54px;
  }
  .profile-portrait-frame{
    height:470px;
  }
  .statement-heading h2,
  .profile-design-copy h2,
  .profile-milestones-heading h2,
  .profile-close h2{
    font-size:50px;
  }
  .profile-quote-panel blockquote{
    font-size:44px;
  }
}


/* V12 About page image replacements */
.profile-detail-image img,
.profile-design-art img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.profile-detail-image img{
  object-position:center;
}
.profile-design-art img{
  object-position:center;
}


/* =========================================================
   V14 — BUY/SELL IMAGE REPLACEMENTS + TESTIMONIAL CLEANUP
========================================================= */

.service-hero-image{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
}

.buyer-vision-image{
  min-height:600px;
  background-size:cover;
  background-position:center;
}

.marketing-image{
  min-height:600px;
  background-size:cover;
  background-position:center;
}

/* The testimonial image break is now image-only. */
.testimonial-image-break > div{
  display:none;
}

@media(max-width:900px){
  .buyer-vision-image{
    min-height:430px;
  }

  .marketing-image{
    min-height:370px;
  }
}
