:root{color-scheme:only light;--paper:#f5f2eb;--paper-deep:#eae5da;--ink:#202521;--muted:#59625d;--line:#c9c9be;--accent:#9a5339;--dark:#242b27;--dark-line:#66716a;--white:#fffdf7;--measure:72rem;--gutter:clamp(1.25rem,4.1vw,5rem);--display:Georgia,'Times New Roman',serif;--text:Arial,Helvetica,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.6 var(--text);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}::selection{background:#d9b9a6;color:var(--ink)}a{color:inherit}a:hover{color:var(--accent)}img,svg{max-width:100%}button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.skip-link{position:absolute;z-index:100;top:-5rem;left:1rem;padding:.6rem 1rem;background:var(--ink);color:var(--white)}.skip-link:focus{top:1rem}
.site-header{position:relative;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{max-width:96rem;margin:auto;min-height:6.2rem;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--ink);flex-shrink:0}.brand-mark{font:700 1.35rem/1 var(--display);letter-spacing:-.095em}.brand-rule{height:1.8rem;border-left:1px solid var(--accent)}.brand-name{font:700 .69rem/1.2 var(--text);letter-spacing:.15em;text-transform:uppercase}.brand-name span{display:block}.primary-nav{display:flex;align-items:center;gap:clamp(1.25rem,2.2vw,2.5rem)}.primary-nav a{text-decoration:none;font-size:.75rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}.primary-nav a[aria-current=page]{color:var(--accent)}.primary-nav .nav-contact{padding:.77rem 1rem;border:1px solid var(--ink);background:var(--ink);color:var(--white)}.primary-nav .nav-contact[aria-current=page]{color:var(--white)}.primary-nav .nav-contact:hover{background:var(--accent);border-color:var(--accent);color:var(--white)}.primary-nav .nav-contact:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.primary-nav .nav-contact:active{background:var(--paper-deep);border-color:var(--ink);color:var(--ink)}.menu-toggle{display:none;border:0;background:none;color:var(--ink);padding:.5rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.container{width:min(100% - 2*var(--gutter),var(--measure));margin-inline:auto}.wide{width:min(100% - 2*var(--gutter),88rem);margin-inline:auto}.eyebrow{font-size:.68rem;font-weight:700;line-height:1.4;letter-spacing:.17em;text-transform:uppercase}.eyebrow.accent{color:var(--accent)}.eyebrow.rule{display:flex;align-items:center;gap:1rem}.eyebrow.rule::before{content:"";width:2rem;border-top:1px solid currentColor}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--display);letter-spacing:-.055em}h1{font-size:clamp(3.9rem,9vw,9.5rem);line-height:.98}h2{font-size:clamp(2.9rem,5.4vw,5.9rem);line-height:1.04}h3{font-family:var(--display);font-size:clamp(1.55rem,2.35vw,2.4rem);line-height:1.17;letter-spacing:-.035em}.lede{font:400 clamp(1.35rem,2vw,2.05rem)/1.42 var(--display);letter-spacing:-.02em}.body-large{font-size:clamp(1.05rem,1.35vw,1.27rem);line-height:1.65}.small{font-size:.84rem;line-height:1.65;color:var(--muted)}.kicker{font-size:.73rem;line-height:1.5;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.text-link{display:inline-flex;align-items:center;gap:1.2rem;text-decoration:none;font-size:.77rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:.45rem;transition:gap .2s}.text-link:hover{gap:1.7rem}.text-link::after{content:"";font-size:1rem;line-height:1}.button-link{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:3.6rem;padding:.9rem 1.25rem;background:var(--ink);color:var(--white);text-decoration:none;font-size:.77rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.button-link:hover{background:var(--accent);color:var(--white)}.button-link::after{content:"";font-size:1.1rem}.button-link.light{background:var(--white);color:var(--ink)}.button-link.light:hover{background:var(--paper-deep)}
.hero{min-height:min(48rem,80vh);display:grid;align-items:end;padding:clamp(5rem,8vw,9rem) 0 4rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(17rem,.4fr);gap:4rem;align-items:end}.hero h1{margin:.5rem 0 2.5rem;max-width:10ch}.hero h1 em{font-weight:400;color:var(--accent)}.hero-intro{max-width:27rem;padding-left:1.5rem;border-left:1px solid var(--accent)}.hero-intro p{margin-bottom:2rem}.hero-index{display:flex;justify-content:space-between;gap:1rem;margin-top:5rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.65rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.hero-index span:last-child{text-align:right}
.section{padding:clamp(5rem,9vw,9rem) 0}.section-tight{padding:clamp(4rem,7vw,7rem) 0}.section-rule{border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:3rem;margin-bottom:clamp(3rem,6vw,6rem)}.section-heading h2{max-width:13ch;margin:0}.section-heading p{max-width:34rem;margin:1rem 0 0}.intro-split{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,10vw,10rem)}.intro-split .lede{max-width:36rem}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(15rem,.65fr) 1.5rem;gap:2rem;align-items:start;padding:2.5rem 0;border-bottom:1px solid var(--line);text-decoration:none}.service-row:hover{color:var(--ink)}.service-row:hover h2,.service-row:hover h3,.service-row:hover .row-arrow{color:var(--accent)}.service-row h2,.service-row h3{font-size:clamp(2rem,3.1vw,3.3rem);line-height:1.17;letter-spacing:-.035em;margin:0}.service-row p{max-width:25rem;margin:.25rem 0 0;color:var(--muted);font-size:.94rem}.row-arrow{font-size:1.25rem;line-height:1;font-weight:700;letter-spacing:.12em}
.dark-panel{background:var(--dark);color:var(--white)}.dark-panel .eyebrow,.dark-panel .small{color:#c9d0c9}.dark-panel .text-link{color:var(--white)}.dark-panel .text-link:hover{color:#e5b69d}.dark-panel .section-rule,.dark-panel .service-list,.dark-panel .service-row{border-color:var(--dark-line)}.statement{display:grid;grid-template-columns:1fr 2fr;gap:3rem;align-items:start}.statement h2{max-width:13ch}.statement-copy{max-width:35rem;margin:1.1rem 0 0}.statement-copy p{color:#d9dfd9}.statement-copy .lede{color:var(--white)}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin:4rem 0 0;padding:0;list-style:none}.process-list li{border-top:1px solid var(--dark-line);padding-top:1.2rem}.process-list h3{font-size:1.65rem}.process-list p{font-size:.87rem;color:#d9dfd9}
.page-hero{padding:clamp(5rem,9vw,9rem) 0 clamp(4rem,8vw,8rem);border-bottom:1px solid var(--line)}.page-hero-inner{display:grid;grid-template-columns:1fr 2.15fr;gap:4rem}.page-hero h1{max-width:12ch;font-size:clamp(3.7rem,7.7vw,8.2rem)}.page-hero .summary{max-width:38rem;margin:3rem 0 0;font:400 clamp(1.3rem,2vw,1.8rem)/1.5 var(--display)}.page-hero .eyebrow{padding-top:1.2rem}.breadcrumbs{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:3rem}.breadcrumbs a{text-decoration:none}.breadcrumbs span{padding:0 .55rem}.chapter{display:grid;grid-template-columns:.75fr 1.5fr;gap:4rem;padding:clamp(3rem,6vw,6rem) 0;border-top:1px solid var(--line)}.chapter h2{font-size:clamp(2.1rem,3.5vw,3.7rem);max-width:13ch;margin:0}.chapter .chapter-body{max-width:39rem}.chapter .chapter-body p{font-size:1.06rem;line-height:1.75}.chapter .chapter-body p:last-child{margin-bottom:0}.chapter-list{padding:0;margin:1.5rem 0 0;list-style:none;border-top:1px solid var(--line)}.chapter-list li{display:grid;grid-template-columns:1fr auto;gap:1rem;border-bottom:1px solid var(--line);padding:1rem 0;font-size:.88rem;font-weight:700}.chapter-list li span{color:var(--accent)}.numbered-steps{border-top:1px solid var(--line)}.numbered-step{display:grid;grid-template-columns:minmax(10rem,.8fr) minmax(0,1.3fr);gap:2.5rem;padding:2rem 0;border-bottom:1px solid var(--line)}.numbered-step h3{margin:0}.numbered-step p{margin:0;color:var(--muted)}.quote-block{padding:clamp(4rem,8vw,8rem) 0}.quote-block blockquote{margin:0;max-width:18ch;font:400 clamp(2.5rem,5vw,5rem)/1.15 var(--display);letter-spacing:-.05em}.quote-block cite{display:block;margin-top:2rem;font-style:normal;font-size:.73rem;text-transform:uppercase;letter-spacing:.12em}
.work-item{display:grid;grid-template-columns:.7fr 1.4fr;gap:4rem;padding:4rem 0;border-top:1px solid var(--line)}.work-item .meta{font-size:.7rem;line-height:1.8;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.work-item h2{font-size:clamp(2.5rem,4vw,4.5rem);margin:0 0 1.5rem}.work-item p{max-width:42rem}.work-item .outcome{font-family:var(--display);font-size:1.45rem;line-height:1.4;margin-top:2rem}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem)}.contact-copy h1{font-size:clamp(3.8rem,6.5vw,7rem)}.contact-copy p{max-width:29rem}.contact-form{border-top:1px solid var(--line);padding-top:2rem}.field{margin-bottom:1.8rem}.field label{display:block;margin-bottom:.55rem;font-size:.73rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.field input,.field textarea{width:100%;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);padding:.95rem 1rem;outline:0}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.field textarea{min-height:10rem;resize:vertical}.field-note{font-size:.75rem;color:var(--muted)}.form-status{min-height:2rem;margin:1rem 0;font-size:.85rem}.form-status.error{color:#8f2f21}.form-status.success{color:#286044}.honeypot{position:absolute;left:-10000px;opacity:0;pointer-events:none}.contact-form button{border:0}.contact-form button:disabled{opacity:.55;cursor:not-allowed}.contact-fallback{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:3rem}.contact-fallback a{overflow-wrap:anywhere}
.cta-band{background:var(--paper-deep);padding:clamp(4rem,7vw,7rem) 0}.cta-band-inner{display:grid;grid-template-columns:1fr 2fr;gap:3rem}.cta-band h2{max-width:13ch;margin:0 0 2rem}.site-footer{background:var(--dark);color:var(--white);padding:4rem 0 2rem}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:3rem;border-bottom:1px solid var(--dark-line);padding-bottom:4rem}.footer-top h2{font-size:clamp(2.5rem,4vw,4.5rem);max-width:12ch;margin:0}.footer-top nav{display:grid;align-content:start;gap:.55rem}.footer-top a{font-size:.87rem;text-decoration:none}.footer-top a:hover{color:#e5b69d}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;padding-top:1.5rem;color:#c9d0c9;font-size:.7rem;letter-spacing:.09em;text-transform:uppercase}
@media(max-width:900px){.menu-toggle{display:block}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;min-height:calc(100vh - 6.2rem);padding:2rem var(--gutter) 4rem;background:var(--paper);border-top:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.primary-nav.is-open{display:flex}.primary-nav a{padding:1rem 0;border-bottom:1px solid var(--line);font-size:.85rem}.primary-nav .nav-contact{margin-top:1.5rem;text-align:center;border:1px solid var(--ink);padding:1rem}.hero-grid,.intro-split,.contact-grid{grid-template-columns:1fr}.hero{min-height:0}.hero-intro{max-width:38rem}.section-heading,.statement,.page-hero-inner,.chapter,.work-item,.cta-band-inner{grid-template-columns:1fr;gap:2rem}.page-hero .eyebrow{padding:0}.breadcrumbs{margin-bottom:2rem}.process-list{grid-template-columns:repeat(2,1fr)}.service-row{grid-template-columns:minmax(0,1fr) 1.5rem}.service-row p{grid-column:1;grid-row:2}.service-row .row-arrow{grid-column:2;grid-row:1}.footer-top{grid-template-columns:1fr 1fr}.footer-top h2{grid-column:1/-1}}
@media(max-width:600px){.header-inner{min-height:5.2rem}.primary-nav{min-height:calc(100vh - 5.2rem)}.hero{padding:4.5rem 0 2.5rem}.hero h1{font-size:clamp(3.55rem,14vw,5.5rem);margin-bottom:2rem}.hero-index{margin-top:4rem}.hero-index span:last-child{max-width:10rem}.section,.section-tight{padding:4.5rem 0}.section-heading{margin-bottom:2.5rem}.service-row{gap:1rem;padding:1.6rem 0}.service-row h2,.service-row h3{font-size:2rem}.service-row p{margin:0}.process-list{grid-template-columns:1fr;gap:1.5rem}.page-hero{padding:4rem 0}.page-hero h1{font-size:clamp(3.25rem,12vw,5.25rem)}.page-hero .summary{margin-top:1.5rem}.numbered-step{grid-template-columns:1fr;gap:1rem}.numbered-step p{grid-column:1}.chapter{padding:3rem 0}.work-item{padding:3rem 0}.footer-top{grid-template-columns:1fr;gap:2rem}.footer-top h2{grid-column:auto}.footer-bottom{display:block}.footer-bottom>span{display:block;margin-bottom:.75rem}.footer-bottom>span:first-child{white-space:nowrap}.footer-bottom [data-copyright-year]{display:inline}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.privacy-choice{width:auto;justify-self:stretch;margin:0;padding:0;border:0;background:none;color:inherit;text-align:left;font-family:inherit;font-size:.87rem;font-weight:400;line-height:1.6}.privacy-choice:hover{color:#e5b69d}.privacy-notice{position:fixed;z-index:50;left:var(--gutter);right:var(--gutter);bottom:1.25rem;max-width:58rem;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.3rem 1.6rem;background:var(--white);color:var(--ink);border:1px solid var(--line);box-shadow:0 1.2rem 3rem #20252124}.privacy-notice p{margin:0}.privacy-notice .eyebrow{margin-bottom:.35rem;color:var(--accent)}.privacy-notice p:not(.eyebrow){font-size:.85rem}.privacy-actions{display:flex;flex-shrink:0;gap:.6rem}.privacy-actions button{border:1px solid var(--ink);background:transparent;padding:.65rem .85rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.privacy-actions button[data-choice="allow"]{background:var(--ink);color:var(--white)}.privacy-actions button:hover{border-color:var(--accent);color:var(--accent)}.privacy-actions button[data-choice="allow"]:hover{background:var(--accent);color:var(--white)}.privacy-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.privacy-actions .privacy-dismiss{border-color:transparent;color:var(--muted)}
@media(max-width:600px){.privacy-notice{left:.75rem;right:.75rem;bottom:.75rem;display:block;padding:1rem}.privacy-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:1rem}.privacy-actions button{min-width:0}.privacy-actions .privacy-dismiss{grid-column:1/-1;justify-self:end;padding:.3rem .5rem}}

@media(max-width:600px){.page-hero h1{font-size:clamp(2.65rem,10.5vw,5.25rem)}.contact-copy h1{font-size:clamp(2.45rem,11vw,4rem)}}

/* Keep directional marks typographic rather than relying on platform emoji fonts. */
.text-link::after,.button-link::after,.row-arrow,.chapter-list li span{
  content:"";
  display:inline-block;
  flex:none;
  width:1rem;
  height:1rem;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 14L14 2M6 2h8v8' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 14L14 2M6 2h8v8' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E") center/contain no-repeat;
}
.row-arrow{width:1.2rem;height:1.2rem;font-size:0}
.chapter-list li span{font-size:0}

/* Specify the brand treatment for controls WebKit otherwise styles natively. */
.menu-toggle,.privacy-choice,.privacy-actions button,.contact-form button{
  -webkit-appearance:none;
  appearance:none;
  border-radius:0;
  font-family:var(--text);
}
.privacy-actions button{color:var(--ink);line-height:1.4}
.privacy-actions .privacy-dismiss{color:var(--muted)}
.privacy-notice a{
  color:var(--accent);
  text-decoration-line:underline;
  text-decoration-color:currentColor;
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
}
.privacy-notice a:hover{color:var(--ink)}
.field input,.field textarea{-webkit-appearance:none;appearance:none}
.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:1}
.contact-direct a{color:inherit;text-decoration-color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.18em}
.contact-direct a:hover{color:var(--accent)}

.contact-fallback address{font-style:normal;white-space:pre-line;margin-bottom:1rem}.contact-fallback p{margin-bottom:.75rem}

.contact-direct{margin:0}.contact-direct address{font-style:normal}.contact-direct>div{display:grid;grid-template-columns:5.5rem 1fr;gap:1rem;padding:.8rem 0;border-top:1px solid var(--line)}.contact-direct dt{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.contact-direct dd{margin:0;font-size:.9rem;line-height:1.5;overflow-wrap:anywhere;white-space:pre-line}.contact-direct .placeholder{color:var(--muted);font-style:italic}
@media(max-width:600px){.contact-direct>div{grid-template-columns:4.8rem 1fr}}

.page-hero.dark-panel{border-bottom-color:var(--dark-line)}.page-hero.dark-panel .breadcrumbs{color:#c9d0c9}.page-hero.dark-panel .eyebrow{color:#d7a68d}.muted-panel{background:var(--paper-deep)}

.quote-detail{max-width:37rem;margin:2rem 0}

.dark-panel :focus-visible,.site-footer :focus-visible{outline-color:#d7a68d}

/* Material direction: two editorial photographs, type, and decisive spatial shifts. */
.hero{min-height:0;padding:clamp(3rem,5vw,5.5rem) 0 2rem}
.hero-stage{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(20rem,.65fr);grid-template-rows:auto 1fr;grid-template-areas:"heading image" "intro image";column-gap:clamp(2rem,5vw,6rem)}
.hero-heading{grid-area:heading;position:relative;z-index:1;padding-top:clamp(1rem,3vw,3rem)}
.hero h1{font-size:clamp(4.4rem,8.25vw,8.7rem);line-height:.96;max-width:10ch;margin:clamp(2rem,4vw,4rem) 0 2rem}
.hero-photo{grid-area:image;position:relative;margin:0 calc(-1*var(--gutter)) 0 0;min-height:43rem;overflow:hidden;background:#42362d}
.hero-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:49% 49%}
.hero-intro{grid-area:intro;align-self:end;max-width:34rem;margin:clamp(2rem,4vw,4rem) 0 clamp(1rem,3vw,3rem) clamp(1rem,6vw,6rem);padding:0;border:0}
.hero-intro::before{content:"";display:block;width:3.5rem;border-top:1px solid var(--accent);margin-bottom:1.5rem}
.hero-intro p{max-width:29rem}
.hero-index{margin-top:1.3rem}
.service-row{grid-template-columns:minmax(0,1.25fr) minmax(13rem,.65fr) 1.5rem;gap:clamp(1rem,2vw,2.5rem);align-items:center;padding:2.8rem 0}

.service-row h2,.service-row h3{max-width:15ch}
.service-row p{line-height:1.6}
.selected-section{padding:clamp(5rem,9vw,9rem) 0}
.selected-stage{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(22rem,.78fr);grid-template-areas:"image copy";min-height:36rem;align-items:stretch}
.selected-photo{grid-area:image;position:relative;margin:0;min-height:36rem;overflow:hidden;background:#d8d4ca}
.selected-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:44% center}
.selected-copy{grid-area:copy;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(2rem,5vw,5.5rem);background:transparent}
.selected-copy h2{font-size:clamp(2.8rem,4.5vw,5rem);max-width:11ch;margin:1.7rem 0}
.selected-copy .lede{font-size:clamp(1.45rem,1.8vw,1.85rem);max-width:22rem}
.selected-copy p:not(.eyebrow){max-width:25rem}
.selected-copy .text-link{margin-top:1.2rem}

@media(max-width:1000px){.hero-stage{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr)}.hero h1{font-size:clamp(4.25rem,8vw,7rem)}.hero-photo{min-height:37rem}.hero-intro{margin-left:0}.selected-stage{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.hero{padding-top:3.5rem}.hero-stage{grid-template-columns:1fr;grid-template-rows:auto auto auto;grid-template-areas:"heading" "image" "intro";gap:0}.hero-heading{padding:0}.hero h1{font-size:clamp(3.55rem,13.5vw,5.5rem);max-width:10ch;margin:2rem 0 2.5rem}.hero-photo{min-height:0;height:clamp(17rem,70vw,28rem);margin-inline:calc(-1*var(--gutter))}.hero-photo img{object-position:50% 48%}.hero-intro{margin:2rem 0 1rem;max-width:31rem}.hero-intro::before{margin-bottom:1.2rem}.hero-index{margin-top:1rem}.service-row{grid-template-columns:minmax(0,1fr) 1.5rem;align-items:start;gap:1.25rem}.service-row p{grid-column:1;grid-row:2}.service-row .row-arrow{grid-column:2;grid-row:1}.selected-stage{grid-template-columns:1fr;grid-template-areas:"image" "copy"}.selected-copy{padding:2.5rem var(--gutter) 3rem}.selected-photo{min-height:0;height:clamp(18rem,65vw,27rem)}}
@media(max-width:600px){.service-row{grid-template-columns:1fr;gap:.8rem;padding:2rem 0}.service-row .row-arrow{display:none}.service-row h2,.service-row h3{font-size:clamp(1.7rem,7vw,2.15rem)}.selected-stage{width:100%;margin:0}.selected-copy h2{margin:1.5rem 0}}

/* Cross-site composition. The established typography and material palette remain the system. */
.home-premise{background:var(--paper-deep);padding-block:clamp(4.5rem,7vw,7rem)}
.home-premise .intro-split{grid-template-columns:.9fr 1.1fr;align-items:start}
.home-premise h2{max-width:12ch}
.home-expertise>.container{display:grid;grid-template-columns:minmax(16rem,.58fr) minmax(0,1.42fr);gap:clamp(3rem,7vw,7rem);align-items:start}
.home-expertise .section-heading{display:block;margin:0;padding-top:.35rem}
.home-expertise .section-heading h2{font-size:clamp(2.9rem,4.5vw,4.9rem);margin:2.2rem 0 1.5rem}
.home-expertise .section-heading p{max-width:21rem}
.home-expertise .service-row{grid-template-columns:minmax(0,1fr) 1.5rem;gap:.7rem 1.4rem;align-items:start;padding:1.8rem 0}
.home-expertise .service-row h3{font-size:clamp(1.85rem,2.6vw,2.75rem)}
.home-expertise .service-row p{grid-column:1;grid-row:2;max-width:30rem;margin:0}
.home-expertise .service-row .row-arrow{grid-column:2;grid-row:1}
.page-home .dark-panel.section{padding-block:clamp(5rem,7vw,7rem)}
.page-home .process-list{margin-top:3.2rem}
.page-home .selected-section{padding-block:clamp(5rem,7vw,7rem)}
.page-home .selected-stage{min-height:33rem}
.page-home .selected-photo{min-height:33rem}
.cta-band{padding-block:clamp(5rem,7vw,7rem)}
.cta-band-inner{grid-template-columns:minmax(12rem,.58fr) minmax(0,1.42fr);gap:clamp(3rem,7vw,7rem)}
.cta-band h2{font-size:clamp(3.2rem,5.7vw,6.2rem);max-width:13ch;line-height:1.02}
.site-footer .footer-top{align-items:start}
.site-footer .footer-top h2{letter-spacing:-.055em}

.page-hero .practice-label{padding-top:0}

.page-ai-transformation .page-hero{padding-block:clamp(5rem,8vw,8rem)}

.page-ai-transformation .page-hero h1{max-width:11ch}

.page-ai-transformation .numbered-step{grid-template-columns:minmax(10rem,.7fr) minmax(0,1.3fr);align-items:start}
.page-ai-transformation .numbered-step h3{font-size:clamp(1.8rem,2.6vw,2.5rem)}
.page-ai-transformation .numbered-steps{margin-top:1rem}

.page-technology-management-consulting .page-hero-inner{display:block}
.page-technology-management-consulting .page-hero-inner>div{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(20rem,.7fr);gap:clamp(3rem,7vw,7rem);align-items:end}
.page-technology-management-consulting .page-hero h1{max-width:13ch;font-size:clamp(4rem,7vw,7.6rem);margin:2.2rem 0 0}
.page-technology-management-consulting .page-hero .summary{margin:0 0 .7rem}
.page-technology-management-consulting .numbered-step{grid-template-columns:minmax(12rem,.7fr) minmax(0,1.3fr);padding-block:2.5rem}

.page-data-analytics .page-hero{background:var(--paper-deep)}
.page-data-analytics .page-hero h1{max-width:12ch}
.page-data-analytics .page-hero .summary{max-width:31rem}
.page-data-analytics .quote-block{padding-block:clamp(5rem,7vw,7rem)}
.page-data-analytics .quote-block blockquote{max-width:22ch}

.page-digital-product-development .page-hero-inner{display:block}
.page-digital-product-development .page-hero h1{max-width:14ch;margin:2.2rem 0 0;font-size:clamp(4.25rem,7.7vw,8rem)}
.page-digital-product-development .page-hero .summary{margin:2.8rem 0 0 auto;max-width:31rem}
.page-digital-product-development .numbered-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(3rem,6vw,6rem);border-top:0}
.page-digital-product-development .numbered-step{display:grid;grid-template-columns:1fr;gap:.9rem 1.2rem;border-top:1px solid var(--line);padding:2.2rem 0 2.8rem}

.page-digital-product-development .numbered-step p{grid-column:1}
.page-digital-product-development .numbered-step h3{font-size:clamp(1.7rem,2.3vw,2.3rem)}

.page-services .page-hero{padding-bottom:clamp(4rem,7vw,7rem)}
.page-services .service-list{margin-top:0}
.page-services .service-row{padding-block:3rem}
.page-services .service-row h2{max-width:18ch}

.work-feature-section{padding-block:clamp(4rem,7vw,7rem)}
.work-feature-section .work-item{border-color:var(--dark-line);padding:clamp(2rem,4vw,4rem) 0 0;grid-template-columns:minmax(12rem,.65fr) minmax(0,1.35fr)}
.work-feature-section .work-item .meta{color:#c9d0c9}
.work-feature-section .work-item h2{font-size:clamp(3.7rem,6vw,6.5rem);max-width:11ch}
.work-feature-section .work-item p{color:#d9dfd9}
.work-feature-section .work-item .body-large,.work-feature-section .work-item .outcome{color:var(--white)}
.work-list-section{padding-block:clamp(3rem,6vw,6rem)}
.work-list-section .work-item:first-child{border-top:0}
.work-list-section .work-item{padding-block:clamp(3rem,5vw,5rem)}

.page-about>.section:nth-of-type(2){background:var(--paper-deep)}
.page-about .intro-split h2{font-size:clamp(3.7rem,6vw,6.5rem);max-width:10ch}
.page-about .intro-split .lede{font-size:clamp(1.6rem,2.4vw,2.5rem)}
.page-about .dark-panel .process-list{margin-top:3rem}

.page-contact>.section{padding-top:clamp(3rem,5vw,5rem)}
.page-contact .contact-grid{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(3rem,6vw,6rem);align-items:start}
.page-contact .contact-copy{padding:clamp(2rem,4vw,4rem);background:var(--dark);color:var(--white)}
.page-contact .contact-copy .eyebrow.accent{color:#d7a68d}
.page-contact .contact-copy .small,.page-contact .contact-copy .placeholder{color:#c9d0c9}
.page-contact .contact-direct a:link,.page-contact .contact-direct a:visited{color:var(--white);text-decoration-color:#d7a68d}
.page-contact .contact-direct a:hover,.page-contact .contact-direct a:focus-visible,.page-contact .contact-direct a:active{color:#e5b69d}
.page-contact .contact-copy h1{font-size:clamp(3.5rem,4.4vw,4.8rem);max-width:10ch}
.page-contact .contact-fallback,.page-contact .contact-direct>div{border-color:var(--dark-line)}
.page-contact .contact-form{padding-top:.35rem;border-top:0}
.page-contact .contact-form>.eyebrow{margin-bottom:2rem;color:var(--accent)}

@media(max-width:1050px){
  .home-expertise>.container{grid-template-columns:minmax(13rem,.55fr) minmax(0,1.45fr);gap:3rem}
  .page-technology-management-consulting .page-hero-inner>div{grid-template-columns:1fr 1fr;gap:3rem}
}
@media(max-width:900px){
  .home-expertise>.container{display:block}
  .home-expertise .section-heading{display:grid;grid-template-columns:1fr 2fr;gap:2rem;margin-bottom:2rem}
  .home-expertise .section-heading h2{margin:0 0 1rem}
  .page-technology-management-consulting .page-hero-inner>div{display:block}
  .page-technology-management-consulting .page-hero .summary{margin-top:2rem}
  .page-contact .contact-grid{grid-template-columns:1fr}
  .page-contact .contact-copy{max-width:none}
  .work-feature-section .work-item{grid-template-columns:1fr;gap:2rem}
}
@media(max-width:700px){
  .home-premise{padding-block:4rem}
  .home-expertise .section-heading{display:block}
  .home-expertise .section-heading h2{margin:1.5rem 0 1rem}
  .home-expertise .service-row{grid-template-columns:1fr;gap:.6rem 1rem}
  .home-expertise .service-row p{grid-column:1;grid-row:2}
  .home-expertise .service-row .row-arrow{display:none}
  .page-home .selected-section{padding-block:4rem}
  .page-home .selected-photo{min-height:0}
  .page-home .process-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.2rem;margin-top:2.5rem}

  .page-home .process-list h3{font-size:1.5rem}
  .cta-band-inner{display:block}
  .cta-band-inner .eyebrow{margin-bottom:2rem}

  .page-ai-transformation .numbered-step,.page-technology-management-consulting .numbered-step{grid-template-columns:1fr;gap:.7rem 1rem}
  .page-ai-transformation .numbered-step p,.page-technology-management-consulting .numbered-step p{grid-column:1}

  .page-digital-product-development .numbered-steps{grid-template-columns:1fr}
  .page-digital-product-development .numbered-step{padding-block:1.8rem}
  .page-digital-product-development .page-hero .summary{margin:1.8rem 0 0}
  .page-contact .contact-copy{padding:3rem var(--gutter)}
  .page-contact .contact-grid{gap:3rem}
}
@media(max-width:359px){
  .page-home .process-list{grid-template-columns:1fr;gap:1.3rem}

}

/* Corrections from rendered desktop and mobile review. */
@media(max-width:900px){
  .home-premise .intro-split{grid-template-columns:1fr;gap:2.5rem}
}
@media(max-width:700px){
  .home-premise h2{max-width:13ch}
  .page-contact .contact-copy{width:calc(100% + 2*var(--gutter));margin:0;transform:translateX(calc(-1*var(--gutter)))}
  .page-about .process-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.2rem}
}
@media(max-width:359px){
  .page-about .process-list{grid-template-columns:1fr}
}
.page-contact .contact-grid>*{min-width:0}
@media(max-width:700px){
  .page-contact .contact-copy h1{font-size:clamp(2.4rem,11vw,3.3rem)}
}
.page-contact .contact-copy :focus-visible{outline-color:#d7a68d}
.page-contact .contact-copy a:hover{color:#e5b69d}

.contact-form[hidden],.contact-availability[hidden]{display:none}.contact-availability{padding-top:.35rem}.contact-availability .eyebrow{margin-bottom:2rem;color:var(--accent)}.contact-availability p:last-child{max-width:28rem}

/* Owner review: align small editorial labels to the visible serif cap height. */
@media(min-width:901px){
  .statement>.eyebrow,.section-heading>.eyebrow,.work-item>.meta,.cta-band-inner>.eyebrow{padding-top:.45rem}
}
/* Case prose is one body role; the serif capability takeaway remains distinct. */
.work-item p:not(.outcome){font-family:var(--text);font-size:clamp(1.06rem,1.25vw,1.15rem);line-height:1.72;font-weight:400}
/* Let the four parts complete the full editorial grid on About. */
.page-about .statement>.process-list{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem);margin-top:clamp(2.5rem,4vw,4rem)}
@media(max-width:700px){.page-about .statement>.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:359px){.page-about .statement>.process-list{grid-template-columns:1fr}}
/* The human-facing Site Map begins directly below its hero rule. */
.page-site-map .page-hero{padding-bottom:clamp(3rem,4vw,4rem)}
.page-site-map>.section{padding-top:clamp(2rem,3vw,3rem)}
.page-site-map .chapter:first-child{border-top:0;padding-top:0}
/* Scale Contact display type with available panel width and allow balanced wrapping. */
.page-contact .contact-copy h1{font-size:clamp(2.6rem,3.65vw,3.5625rem);max-width:100%;text-wrap:balance}
@media(max-width:900px) and (min-width:701px){.page-contact .contact-copy h1{font-size:clamp(3.2rem,5.8vw,4.2rem)}}
@media(max-width:700px){.page-contact .contact-copy h1{font-size:clamp(2.4rem,11vw,3.3rem)}}
