/* Public service discovery follows the approved frosted photography system. */
.service-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.service-link-card { display:flex; flex-direction:column; align-items:flex-start; gap:18px; min-width:0; padding:24px; background:var(--studio-surface); border:1px solid var(--g-line); border-radius:var(--r-lg); box-shadow:var(--studio-depth); -webkit-backdrop-filter:var(--studio-blur); backdrop-filter:var(--studio-blur); }
.service-link-card h3 { font-size:clamp(20px,2.1vw,27px); line-height:1.25; letter-spacing:-.04em; margin:0; }
.service-link-card > span:last-child { margin-top:auto; display:flex; align-items:center; gap:12px; min-height:44px; font-size:12px; color:var(--text-2); }
.service-link-card:hover { border-color:var(--border-strong); }
.service-page .lp-h1 { max-width:1000px; font-size:clamp(36px,6.4vw,78px); }
.service-explanation { max-width:820px; }
.service-explanation h2 { font-size:clamp(24px,3vw,34px); letter-spacing:-.04em; margin-bottom:20px; }
.service-explanation p, .service-questions p { color:var(--text-2); font-size:16px; line-height:1.8; }
.service-page .lp-card h3 { font-size:20px; margin-bottom:12px; }
.service-page .lp-card { background:var(--studio-surface); box-shadow:var(--studio-depth); }
.service-projects { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-block:24px; }
.service-project { display:block; min-width:0; border:1px solid var(--g-line); border-radius:var(--r-lg); overflow:hidden; background:var(--studio-surface); box-shadow:var(--studio-depth); }
.service-project img { display:block; width:100%; height:auto; aspect-ratio:3/4; object-fit:cover; }
.service-project h3 { padding:18px; font-size:16px; line-height:1.5; }
.service-questions { max-width:820px; }
.service-questions article { border-top:1px solid var(--border); padding-block:24px; }
.service-questions h3 { font-size:21px; line-height:1.4; margin-bottom:14px; }
.service-about-link { margin-top:24px; color:var(--text-2); }
.service-browse-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin-block:18px 28px; font-size:13px; }
.service-browse-links a { min-height:44px; display:inline-flex; align-items:center; gap:8px; text-decoration:underline; text-underline-offset:4px; }
.hero--studio .hero-title.hero-title--positioned { font-size:clamp(38px,4.8vw,64px); }
.hero-title--positioned .hero-service-role { display:block; font-size:.52em; letter-spacing:-.035em; line-height:1.4; margin-top:12px; color:var(--text-2); }
@media(max-width:760px) { .service-links { grid-template-columns:1fr; } .service-projects { grid-template-columns:repeat(2,minmax(0,1fr)); } .service-link-card { padding:22px; } .hero--studio .hero-title.hero-title--positioned { font-size:clamp(36px,8.5vw,62px); } }
@media(max-width:420px) { .service-projects { grid-template-columns:1fr; } .service-page .lp-grid { grid-template-columns:minmax(0,1fr); } }

.service-hero { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:44px; text-align:left; padding-top:60px; }
.service-hero-copy { min-width:0; }
.service-hero .lp-h1 { font-size:clamp(36px,4.6vw,62px); }
.service-hero .lp-ctas { justify-content:flex-start; }
.service-hero-media { display:block; min-width:0; width:100%; }
.service-hero-media figure { margin:0; overflow:hidden; border:1px solid var(--g-line); border-radius:var(--r-lg); box-shadow:var(--studio-depth); background:var(--studio-surface); }
.service-hero-media img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center 35%; }
.service-hero-media figcaption { padding:14px 20px; font-size:12px; color:var(--text-2); }
@media(max-width:800px) { .service-hero { grid-template-columns:minmax(0,1fr); gap:24px; padding-top:38px; } .service-hero .lp-h1 { font-size:clamp(36px,7vw,54px); } }
