.five-hero { background: var(--navy-deep); color: #fff; padding: 150px 0 80px; overflow: hidden; }
.five-hero__grid { display: grid; grid-template-columns: 1.12fr 1fr; gap: 4rem; align-items: center; }
.five-wordmark { font-family: var(--font-display); color: var(--gold); font-size: clamp(4.5rem, 9vw, 8.5rem); line-height: .95; font-weight: 900; letter-spacing: -.075em; margin: 1.7rem 0; }
.five-wordmark span { font-size: .42em; letter-spacing: -.055em; margin: 0 .13em; }
.five-hero h1 { font-family: var(--font-display); font-size: clamp(2.4rem, 4.2vw, 4.2rem); line-height: 1.06; letter-spacing: -.04em; font-weight: 800; margin-bottom: 1.5rem; }
.five-hero h1 em { font-style: normal; color: var(--gold); }
.five-lead { font-size: 1.12rem; color: #c4c7cf; max-width: 520px; line-height: 1.75; }
.five-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 1.1rem; margin: 1.4rem 0; }
.five-price span { color: #c4c7cf; font-size: .95rem; }
.five-price strong { color: var(--gold); font-size: 3.8rem; font-weight: 900; letter-spacing: -.045em; line-height: 1; }
.five-price del, .five-final del { text-decoration-thickness: 2px; }
.five-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.6rem; }
.five-location { font-size: .85rem; color: #aeb3be; margin-top: 1.25rem; }
.five-hero__photo { position: relative; min-width: 0; }
.five-hero__photo img { display: block; width: 100%; height: 620px; object-fit: cover; border-radius: 160px 160px 16px 16px; }
.five-photo-note { position: absolute; bottom: 0; left: 0; right: 0; padding: 4rem 1.8rem 1.8rem; border-radius: 0 0 16px 16px; background: linear-gradient(transparent,rgba(0,0,0,.88)); }
.five-photo-note span, .five-photo-note strong { display: block; }
.five-photo-note span { color: #c4c7cf; font-size: .9rem; }
.five-photo-note strong { color: #fff; font-size: 1.4rem; }
.five-benefit-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 2rem; }
.five-benefit-grid article { border-top: 1px solid var(--color-divider); padding-top: 1.5rem; }
.five-number { font-size: .8rem; font-weight: 800; color: var(--gold-on-light); }
.five-benefit-grid h3 { font-size: 1.25rem; letter-spacing: -.02em; margin: 1.1rem 0 .8rem; }
.five-benefit-grid p { color: var(--color-text-muted); line-height: 1.8; }
.five-process { background: var(--navy); color: #fff; }
.five-process__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; }
.five-process .section-title { color: #fff; margin-bottom: 1.5rem; }
.five-process p { color: #c4c7cf; line-height: 1.8; }
.five-gallery-link { display: inline-block; margin-top: 1.5rem; color: var(--gold); font-weight: 700; }
.five-process ol { list-style: decimal-leading-zero; padding-left: 2.2rem; }
.five-process li { padding: 0 0 1.5rem .6rem; margin-bottom: 1.5rem; border-bottom: 1px solid var(--navy-border); }
.five-process li::marker { color: var(--gold); font-weight: 800; }
.five-process li strong { font-size: 1.4rem; }
.five-process li p { margin-top: .6rem; }
.five-review { text-align: center; background: var(--color-white); }
.five-review blockquote { max-width: 880px; margin: 1.8rem auto; font-size: clamp(1.6rem,3vw,2.6rem); font-family: var(--font-display); line-height: 1.45; font-weight: 600; letter-spacing: -.025em; }
.five-review p { color: var(--color-text-muted); margin-bottom: 1.2rem; }
.five-review a { text-decoration: underline; text-underline-offset: 4px; font-weight: 700; }
.five-faq .container { max-width: 850px; }
.five-faq details { border-top: 1px solid var(--color-divider); padding: 1.5rem 0; }
.five-faq details:last-child { border-bottom: 1px solid var(--color-divider); }
.five-faq summary { font-weight: 700; font-size: 1.15rem; cursor: pointer; padding-right: 1rem; }
.five-faq details p { padding-top: 1rem; color: var(--color-text-muted); line-height: 1.8; }
.five-final { background: var(--navy-deep); color: #fff; text-align: center; }
.five-final h2 { font-size: clamp(3rem,7vw,6rem); line-height: 1.03; font-weight: 900; letter-spacing: -.05em; margin: 1.5rem 0; }
.five-final p:not(.label) { color: #c4c7cf; font-size: 1.2rem; }
.five-final p strong { color: var(--gold); }
.five-final .five-actions { justify-content: center; }
.five-call { display: inline-block; margin-top: 1.5rem; color: #c4c7cf; text-decoration: underline; text-underline-offset: 4px; }
.five-hero a:focus-visible, .five-final a:focus-visible { outline: 3px solid var(--gold); outline-offset: 5px; }
.five-faq summary:focus-visible { outline: 3px solid var(--gold-on-light); outline-offset: 5px; }
@media (max-width: 1000px) { .five-hero__grid { gap: 2rem; } .five-hero__photo img { height: 560px; } .five-benefit-grid { grid-template-columns: repeat(2,1fr); } .five-process__grid { gap: 3rem; } }
@media (max-width: 700px) {
  .five-hero { padding: 118px 0 48px; }
  .five-hero__grid, .five-process__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .five-hero h1 { font-size: clamp(2.2rem,8.5vw,3.4rem); }
  .five-wordmark { font-size: 6rem; }
  .five-hero__photo img { height: 330px; border-radius: 80px 80px 12px 12px; }
  .five-benefit-grid { gap: 1.5rem; }
  .five-actions .btn { flex: 1 1 auto; justify-content: center; }
  .five-price { gap: .75rem; }
  .five-price strong { font-size: 3.2rem; }
}
@media (max-width: 390px) { .five-benefit-grid { grid-template-columns: 1fr; } .five-price span { font-size: .8rem; } }
.five-hero__photo img { height: auto; aspect-ratio: 3 / 2; border-radius: 16px; }
