/* Clear offers, distinct inquiry paths, and a fully centered presentation. */
.hero { padding-top: 54px; gap: 34px; }
.hero h1 { margin-top: 23px; margin-bottom: 20px; font-size: clamp(58px,6.4vw,84px); }
.hero-copy>p { margin-bottom: 23px; }
.hero-offer { width: fit-content; max-width: 100%; margin: 0 auto 23px; padding: 20px 28px; border: 1px solid #c5d2ac; border-radius: 5px; background: #eaf0db; }
.offer-heading { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 8px; }
.offer-heading strong { font-size: 34px; font-weight: 500; letter-spacing: -.07em; line-height: 1; }
.offer-heading>span { font-size: 9px; letter-spacing: .08em; font-weight: 700; }
.hero-offer p { font-size: 14px; font-weight: 500; line-height: 1.5; }
.hero-offer p>span { padding: 0 9px; }
.hero-offer small { font-size: 10px; display: block; color: var(--muted); margin-top: 6px; line-height: 1.5; }
.hero-actions { display: flex; justify-content: center; align-items: center; gap: 12px; flex-wrap: wrap; }
.hero-actions .button { gap: 20px; }
.hero-note { max-width: 500px; line-height: 1.5; margin: 16px auto 0; }
.hero-art { width: min(580px,100%); }
.website-concept { margin-top: 74px; padding-top: 54px; border-top: 1px solid var(--line); }
.concept-intro h3 { font-size: 32px; margin: 15px 0 12px; }
.concept-intro>p { font-size: 13px; color: var(--muted); }
.browser-mockup { width: min(880px,100%); margin: 29px auto 0; border: 1px solid #bfc9bc; border-radius: 9px; overflow: hidden; box-shadow: 0 14px 40px #173a3110; }
.browser-chrome { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 17px; background: #e5e9df; border-bottom: 1px solid #c8cfc1; font-size: 8px; letter-spacing: .08em; color: #4f6056; }
.browser-dots { display: flex; gap: 5px; width: 55px; }
.browser-dots i { height: 6px; width: 6px; background: #aab8a5; border-radius: 50%; }
.concept-preview-badge { background: #d2dacb; padding: 4px 6px; border-radius: 2px; font-size: 7px; }
.concept-site { background: #0c1718; color: #f3efdf; }
.concept-nav { padding: 25px 24px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 17px; }
.harborline-mark { display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 18px; font-weight: 700; letter-spacing: .14em; line-height: 1; }
.harborline-mark>span { color: #28d2c8; font-size: 39px; line-height: .8; letter-spacing: -.14em; transform: skew(-7deg); margin-right: 6px; }
.harborline-mark small { font-size: 8px; display: block; letter-spacing: .39em; font-weight: 400; margin-top: 7px; }
.concept-nav-items { font-size: 7px; letter-spacing: .12em; color: #9eb5b3; }
.concept-hero { position: relative; min-height: 365px; isolation: isolate; overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 45px 24px; }
.concept-hero>img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 77%; }
.concept-hero:after { content:''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg,#0c1718c9,#0c17188c); }
.concept-eyebrow { font-size: 8px; letter-spacing: .16em; color: #6ce8dd; font-weight: 700; }
.concept-hero h4 { font-size: 44px; letter-spacing: -.045em; line-height: 1.08; font-weight: 500; margin: 18px 0 15px; }
.concept-hero h4 em { color: #6ce8dd; }
.concept-hero p { font-size: 12px; color: #e5eae3; }
.concept-cta { display: inline-flex; justify-content: center; align-items: center; gap: 22px; margin-top: 23px; background: #3cddd1; color: #0b2526; border-radius: 2px; padding: 13px 18px; font-size: 10px; font-weight: 700; }
.concept-cta .arrow-icon { width: 13px; height: 13px; }
.concept-service-row { display: grid; grid-template-columns: repeat(3,1fr); padding: 25px 24px; gap: 20px; background: #112022; }
.concept-service-row>div { display: flex; flex-direction: column; align-items: center; }
.concept-service-row span { color: #54c9c2; font-size: 8px; margin-bottom: 9px; }
.concept-service-row b { font-size: 16px; font-weight: 500; }
.concept-service-row small { font-size: 9px; color: #9db0ad; margin-top: 7px; line-height: 1.4; }
.concept-footnote { color: #90a7a4; font-size: 7px; letter-spacing: .1em; padding: 14px 20px; }
.concept-disclaimer { max-width: 650px; margin: 21px auto; font-size: 11px; color: var(--muted); }
.website-concept>.text-link { font-size: 12px; }
.websites { background: var(--soft); }
.websites .eyebrow,.founder .eyebrow { margin-bottom: 22px; }
.websites h2 { font-size: clamp(38px,4.3vw,61px); }
.website-intro { max-width: 540px; margin: 26px auto 0; font-size: 14px; color: var(--muted); }
.website-scope { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; max-width: 980px; margin: 43px auto 36px; }
.website-scope>div { border-top: 1px solid #c9d1ba; padding: 26px 10px 0; }
.website-scope span { font-size: 9px; color: var(--muted); }
.website-scope h3 { font-size: 25px; margin: 14px 0; }
.website-scope p { font-size: 13px; color: var(--muted); max-width: 270px; margin: auto; }
.website-actions { display: flex; flex-direction: column; align-items: center; gap: 23px; }
.founder { border-top: 1px solid var(--line); }
.founder-emblem { width: 88px; height: 88px; margin: 29px auto; border-radius: 50%; background: #e4ead7; display: flex; align-items: center; justify-content: center; }
.founder-emblem svg { width: 48px; height: 48px; stroke: var(--ink); fill: none; stroke-width: 1.5; }
.founder h2 { font-size: clamp(38px,4.3vw,61px); }
.founder-statement { font-size: 18px; max-width: 510px; margin: 25px auto 0; color: #4c6258; }
.founder-signature { margin: 31px auto 0; }
.founder-signature h3 { font-size: 20px; }
.founder-signature p { font-size: 11px; margin-top: 8px; color: var(--muted); }
.founder-signature small { font-size: 9px; color: var(--muted); margin-top: 12px; display: block; }
.contact-intro { font-size: 13px; max-width: 470px; margin: 22px auto 0; }
.inquiry-paths { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: min(960px,100%); gap: 25px; }
.inquiry-card { border: 1px solid #aec467; background: #f7f8e9; padding: 32px; border-radius: 5px; scroll-margin-top: 30px; }
.inquiry-type { display: inline-block; font-size: 9px; letter-spacing: .12em; font-weight: 700; color: #5a6d3c; }
.inquiry-card h3 { font-size: 27px; margin: 18px 0; line-height: 1.15; }
.inquiry-card>p { font-size: 13px; color: #54634b; max-width: 340px; margin: auto; min-height: 65px; }
.inquiry-brief { border-top: 1px solid #d0dabb; padding-top: 20px; margin-top: 23px; }
.inquiry-brief b { font-size: 11px; font-weight: 600; }
.inquiry-brief p { font-size: 12px; color: #54634b; margin-top: 10px; }
.inquiry-placeholder { margin: 23px auto 13px; border: 1px dashed #acbd86; padding: 14px 10px; font-size: 11px; border-radius: 3px; }
.inquiry-status { font-size: 8px; letter-spacing: .06em; color: #6a7859; }
.contact-draft-note { font-size: 10px; line-height: 1.7; max-width: 590px; opacity: .85; }
@media(max-width:800px){
 .header nav { gap: 20px; }
 .hero { padding-top: 44px; }
 .hero h1 { font-size: 65px; }
 .hero-offer { padding: 18px 24px; }
 .website-scope { gap: 24px; }
 .website-scope h3 { font-size: 23px; }
 .inquiry-card { padding: 26px 20px; }
 .inquiry-card h3 { font-size: 24px; }
}
@media(max-width:600px){
 .hero { padding-top: 34px; gap: 27px; }
 .hero h1 { font-size: clamp(48px,12.5vw,70px); }
 .hero-copy>p { margin-bottom: 22px; }
 .hero-offer { width: 100%; padding: 18px 15px; margin-bottom: 19px; }
 .offer-heading { gap: 11px; }
 .offer-heading strong { font-size: 32px; }
 .offer-heading>span { font-size: 8px; }
 .hero-offer p { font-size: 12px; max-width: 290px; margin: auto; }
 .hero-offer p>span { padding: 0 5px; }
 .hero-offer small { font-size: 9px; max-width: 260px; margin-left: auto; margin-right: auto; }
 .hero-actions { flex-direction: column; gap: 10px; }
 .hero-actions .button { width: 100%; max-width: 350px; }
 .hero-note { font-size: 9px; max-width: 290px; margin-top: 14px; }
 .hero-art { width: 100%; }
 .website-concept { margin-top: 47px; padding-top: 37px; }
 .concept-intro h3 { font-size: 28px; line-height: 1.15; }
 .concept-intro>p { font-size: 12px; max-width: 280px; margin: auto; }
 .browser-chrome { padding: 10px; font-size: 6px; gap: 7px; }
 .browser-dots { width: 28px; gap: 3px; }
 .browser-dots i { width: 4px; height: 4px; }
 .concept-preview-badge { font-size: 5px; padding: 4px; }
 .concept-nav { padding: 20px 12px; gap: 13px; }
 .harborline-mark { font-size: 14px; }
 .harborline-mark>span { font-size: 31px; }
 .harborline-mark small { font-size: 6px; }
 .concept-nav-items { font-size: 6px; letter-spacing: .04em; }
 .concept-hero { min-height: 300px; padding: 35px 12px; }
 .concept-hero h4 { font-size: 29px; }
 .concept-eyebrow { font-size: 6px; }
 .concept-hero p { font-size: 10px; }
 .concept-cta { font-size: 8px; padding: 12px 14px; gap: 10px; }
 .concept-service-row { padding: 20px 10px; gap: 10px; }
 .concept-service-row b { font-size: 12px; }
 .concept-service-row small { font-size: 7px; }
 .concept-footnote { font-size: 6px; padding: 12px 8px; line-height: 1.6; letter-spacing: .05em; }
 .concept-disclaimer { font-size: 10px; }
 .website-concept>.text-link { font-size: 10px; gap: 13px; }
 .websites h2 { font-size: 39px; }
 .website-intro { font-size: 13px; margin-top: 23px; }
 .website-scope { display: block; margin-top: 32px; }
 .website-scope>div { padding-top: 22px; margin-top: 25px; }
 .website-scope h3 { font-size: 25px; margin: 13px 0; }
 .website-scope p { font-size: 13px; max-width: 310px; }
 .website-actions .button { width: 100%; max-width: 350px; }
 .founder h2 { font-size: 39px; }
 .founder-emblem { width: 75px; height: 75px; margin: 24px auto; }
 .founder-statement { font-size: 16px; max-width: 310px; margin-top: 23px; }
 .inquiry-paths { grid-template-columns: 1fr; gap: 20px; }
 .inquiry-card { padding: 27px 20px; }
 .inquiry-card h3 { font-size: 27px; }
 .inquiry-card>p { min-height: 0; }
 .contact-draft-note { font-size: 10px; }
 .contact h2 { font-size: 43px; }
}
@media(max-width:390px){
 .hero h1 { font-size: 49px; }
 .hero-offer { padding-left: 10px; padding-right: 10px; }
 .hero-offer p { font-size: 11px; }
 .offer-heading>span { font-size: 7px; }
 .concept-hero h4 { font-size: 25px; }
 .websites h2,.founder h2 { font-size: 35px; }
 .contact h2 { font-size: 38px; }
 .inquiry-card { padding-left: 16px; padding-right: 16px; }
 .inquiry-card h3 { font-size: 25px; }
 .inquiry-placeholder { font-size: 10px; }
}
/* Use the car detail as the mockup's backdrop, keeping the poster headline out of view. */
.concept-hero > img { transform: scale(1.75); transform-origin: center 78%; }
