/* Small commercial refinements: the entrance geometry and 3D scenes are unchanged. */
.home-process { margin-top: 12px; }
.process-timing { max-width: 820px; margin: 28px 0 0; color: #a6b7c7; font-size: 12px; line-height: 1.85; }
.home-price-note { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 38px; padding: 26px 0; border-block: 1px solid var(--line); }
.home-price-note p { margin: 0; }
.home-price-note strong { display: block; font: 400 34px/1.2 var(--serif); color: var(--ivory); margin: 11px 0 8px; }
.home-price-note p>span:last-child { color: #9daebe; font-size: 12px; line-height: 1.8; }
.home-price-note a { flex-shrink: 0; }
.project-tab-kind { grid-column: 1/-1; display: block; font-size: 9px; line-height: 1.45; color: #91a4b5; }
.project-tab[aria-selected="true"] .project-tab-kind { color: #c5cfd6; }
.pricing-page .page-heading { max-width: 960px; }
.pricing-page .page-heading>p { max-width: 640px; }
.pricing-intro-note { margin: 25px 0 32px; color: #cfb990; font-size: 12px; line-height: 1.8; }
.pricing-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.price-card { min-width: 0; display: flex; flex-direction: column; padding: clamp(24px,3vw,40px); border: 1px solid #aebed133; border-radius: 14px; background: linear-gradient(145deg,#142638b8,#0a1521c4); }
.price-card h2 { margin: 18px 0 12px; font: 400 clamp(33px,3vw,43px)/1.12 var(--serif); letter-spacing: -.015em; }
.package-price { margin: 0 0 18px; font: 500 36px/1.2 var(--sans); color: #ead8b7; letter-spacing: -.04em; }
.package-price>span { font-size: 12px; letter-spacing: 0; color: #a9b7c3; margin-right: 6px; }
.package-fit { margin: 0 0 23px; min-height: 3.6em; color: #b9c6d0; font-size: 14px; line-height: 1.8; }
.price-card h3 { margin: 0 0 13px; font: 600 13px/1.6 var(--sans); color: #e3d6bf; }
.price-card ul { margin: 0 0 23px; padding: 0 0 0 18px; color: #b2c0cb; font-size: 14px; line-height: 1.85; }
.price-card li { padding-left: 4px; margin: 0 0 9px; }
.price-card li::marker { color: #c3a578; }
.price-card strong { font-weight: 600; color: #e1e5e8; }
.package-time { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 7px 14px; margin: auto 0 23px; padding: 17px 0; border-block: 1px solid #aebed126; font-size: 12px; line-height: 1.7; }
.package-time>span { color: #9bafc0; }
.package-time>strong { color: #e2cfab; }
.package-boundary { margin-bottom: 24px; }
.package-boundary h3 { margin-bottom: 7px; }
.package-boundary p { margin: 0; min-height: 3.6em; color: #9daebd; font-size: 13px; line-height: 1.85; }
.package-cta { width: 100%; margin-top: 0; box-sizing: border-box; }
.package-download { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-height: 48px; box-sizing: border-box; margin-top: 12px; padding: 13px 17px; border: 1px solid #d9bd8e70; border-radius: 9px; background: #d9bd8e05; color: #d9bd8e; font: 500 12px/1.5 var(--sans); text-decoration: none; transition: background-color .18s, border-color .18s, color .18s; }
.package-download>span { white-space: nowrap; }
.package-download svg { width: 17px; height: 17px; flex: 0 0 17px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.package-download:hover { background: #d9bd8e12; border-color: #d9bd8ebb; color: #f0d9b0; }
.package-download:focus-visible { outline: 2px solid #e5cda5; outline-offset: 4px; }
@media (max-width: 380px) {
  .package-download { padding-inline: 13px; gap: 8px; font-size: 10.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .package-download { transition: none; }
}
.pricing-details { margin-top: 54px; padding-top: 38px; border-top: 1px solid var(--line); }
.pricing-details>h2 { margin: 16px 0 30px; font: 400 clamp(34px,4vw,46px)/1.15 var(--serif); }
.pricing-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 42px; }
.pricing-detail-grid h3 { margin: 0 0 10px; font: 400 27px/1.2 var(--serif); color: #e0d2ba; }
.pricing-detail-grid p { margin: 0; color: #a8b8c6; font-size: 14px; line-height: 1.9; max-width: 600px; }
@media (min-width: 761px) and (max-width: 1100px) {
  .site-header { grid-template-columns: auto 1fr; gap: 18px; }
  .site-header .header-note { display: none; }
  .main-nav { justify-self: end; }
  .main-nav a { min-width: 68px; padding-inline: 13px; }
}
@media (max-width: 760px) {
  .main-nav a { font-size: 11px; padding-inline: 5px; }
  .home-price-note { align-items: flex-start; flex-direction: column; gap: 11px; padding: 23px 0; margin-top: 29px; }
  .home-price-note strong { font-size: 32px; }
  .pricing-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .price-card { padding: 25px 23px; border-radius: 12px; }
  .price-card h2 { font-size: 35px; }
  .package-price { font-size: 34px; }
  .package-fit,.package-boundary p { min-height: 0; }
  .package-time { margin-top: 0; }
  .pricing-details { margin-top: 35px; padding-top: 29px; }
  .pricing-detail-grid { grid-template-columns: minmax(0,1fr); gap: 26px; }
}
@media (max-width: 380px) {
  .site-header { gap: 4px; }
  .main-nav a { padding-inline: 3px; font-size: 10px; }
  .price-card { padding: 23px 19px; }
  .price-card h2 { font-size: 32px; }
  .package-cta { font-size: 11px; padding-inline: 14px; }
}

/* Keep each authored headline phrase on one line on phones. Desktop type is untouched. */
@media (max-width: 760px) {
  .pricing-page .page-heading h1,
  .about-page .page-heading h1,
  .home-copy h1,
  .contact-copy h1 {
    font-size: clamp(24px,7.4vw,42px);
    line-height: 1.16;
  }
  .content-page h1>.heading-line,
  .content-page h1>em { display: block; white-space: nowrap; }
  .content-page h1>br { display: none; }
  .pricing-details>h2,.home-process>h2 { font-size: clamp(27px,7vw,38px); }
  .pricing-details>h2>em,.home-process>h2>em { display: block; white-space: nowrap; }
  .price-card h2 { font-size: clamp(25px,7.1vw,35px); white-space: nowrap; }
}

@media (max-width: 760px) {
  .home-services h2 { font-size: clamp(24px,6.7vw,30px); white-space: nowrap; }
  .about-prose h2 { font-size: clamp(27px,7.2vw,32px); white-space: nowrap; }
  .about-approach h2 { font-size: clamp(30px,8vw,39px); }
  .about-approach h2>em { display: block; white-space: nowrap; }
  .about-approach h2>br { display: none; }
  .creator-heading h2 { font-size: clamp(25px,6.8vw,36px); }
  .creator-heading h2>em { white-space: nowrap; }
  .pricing-detail-grid h3 { font-size: clamp(25px,6.5vw,27px); white-space: nowrap; }
  .founder-panel h2 em { display: block; white-space: nowrap; }
  .process-section>h2 { font-size: clamp(30px,8vw,36px); }
  .process-section>h2>em { display: block; white-space: nowrap; }
  .process-list h3 { font-size: clamp(25px,6.7vw,29px); white-space: nowrap; }
  .contact-card h3 { font-size: clamp(21px,5.6vw,29px); white-space: nowrap; }
}

/* Keep prices, dimensions and short phrases whole; prose wraps at word boundaries. */
.package-price,.keep-together { white-space: nowrap; }
.price-card,.pricing-detail-grid { word-break: normal; overflow-wrap: normal; hyphens: none; }
.price-card p,.price-card li,.pricing-detail-grid p { text-wrap: pretty; }
.package-time>strong { white-space: nowrap; }
