/* Photography gives the existing quiet card design a warmer material contrast. */
.process-diagram{display:flex;align-items:center;justify-content:center;height:280px;margin:0 0 24px;padding:18px 24px;border:2px solid currentColor;border-radius:16px;color:var(--petrol);background:#f8fcfc;overflow:hidden}.process-diagram img{display:block;width:100%;height:100%;object-fit:contain}
.process-diagram+.process-list .step-number{display:none}.process-diagram+.process-list .process-step{padding-top:25px}.process-diagram+.process-list h3{margin-top:0}
.intro-workproof{margin:0;min-width:0;overflow:hidden}.intro-workproof-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:center;padding:20px 10px 30px}
.intro-workproof-pair img{display:block;width:100%;height:auto;aspect-ratio:.82;object-fit:cover;object-position:top;border-radius:12px;box-shadow:0 14px 28px #10265316}
.intro-workproof-pair img:first-child{transform:rotate(-4deg)}.intro-workproof-pair img:last-child{transform:translateY(18px) rotate(4deg)}
.intro-workproof figcaption{margin-top:18px;color:var(--navy);font-size:14px;text-align:center}
.contact-direct-buttons{display:flex;flex-wrap:wrap;gap:12px}.contact-direct-buttons .btn{gap:10px;color:#fff}.contact-direct-buttons .btn-outline-primary{color:var(--petrol);--bs-btn-color:var(--petrol);--bs-btn-border-color:var(--petrol);--bs-btn-hover-bg:var(--petrol);--bs-btn-hover-border-color:var(--petrol)}.contact-direct-buttons .btn-outline-primary:hover{color:#fff}
.home-google-service{margin-top:24px}.home-google-service .card-body{display:grid;grid-template-columns:38px 160px 1fr auto;align-items:center;gap:24px}.home-google-service .service-icon,.home-google-service h3,.home-google-service p{margin:0}.home-google-service .card-link{margin:0}
@media(max-width:991px){.home-google-service .card-body{display:flex;flex-direction:column;align-items:flex-start;gap:18px}}
@media(max-width:575px){.process-diagram{height:240px;padding:12px 14px}.process-diagram img{max-height:none;width:100%;max-width:360px;margin:auto}.contact-direct-buttons{flex-direction:column;align-items:stretch}.contact-direct-buttons .btn{width:100%}}
.page-intro-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}
.page-intro-copy{min-width:0}.page-intro-copy h1{font-size:clamp(2.1rem,3.1vw,3.3rem)}
.page-intro h1,.page-intro p,.hero h1,.hero-lead,.inquiry-intro h1,.inquiry-intro>p{hyphens:none;word-break:normal;overflow-wrap:normal}
.page-intro h1,.hero h1,.inquiry-intro h1{text-wrap:balance}
.page-intro-visual{margin:0;overflow:hidden;border-radius:16px;box-shadow:0 18px 40px #10265310}
.page-intro-visual img{display:block;width:100%;height:310px;object-fit:cover}
.page-intro-visual.intro-portrait{width:100%;max-width:340px;justify-self:end}
.page-intro-visual.intro-portrait img{object-position:center top;height:350px}
.project-card .project-preview{padding:30px 22px 25px;background:#eaf2f5}
.project-laptop{display:block;max-width:520px;margin:auto;padding:0 3px}
.laptop-screen{display:block;position:relative;padding:10px 7px 7px;background:#233343;border-radius:12px 12px 3px 3px;box-shadow:0 10px 20px #1026531a}
.laptop-screen:before{content:'';position:absolute;top:4px;left:50%;width:3px;height:3px;border-radius:50%;background:#81909d}
.project-card .project-preview .laptop-screen img{aspect-ratio:1.6;border-radius:3px;object-fit:cover;object-position:top}
.laptop-base{display:block;position:relative;height:10px;margin:0 -12px;background:linear-gradient(#dce2e7,#9daab6);border-radius:1px 1px 45% 45%;box-shadow:0 9px 14px #10265316}
.laptop-base:before{content:'';position:absolute;top:0;left:40%;width:20%;height:4px;border-radius:0 0 5px 5px;background:#8f9da8}
.process-photo{display:block;width:100%;height:280px;object-fit:cover;border-radius:16px;margin:0 0 36px}
.inquiry-scene{display:block;width:100%;height:200px;object-fit:cover;border-radius:14px;margin-top:28px}
@media(max-width:575px){.page-intro-copy h1,.inquiry-intro h1,.hero h1{font-size:clamp(1.5rem,7.4vw,2rem)}}
@media(max-width:575px){
 h2{font-size:clamp(1.25rem,6.15vw,1.5rem);line-height:1.3}.contact-panel h2{font-size:1.5rem}.service-card h3,.project-card h3{font-size:1.15rem}
 .page-intro-copy h1,.inquiry-intro h1,.hero h1{font-size:clamp(1.5rem,7.4vw,2rem)}
 .client-tile{min-height:0;padding:20px 12px}.client-tile img{width:56px;height:56px;margin-bottom:14px}.client-tile h3{margin-bottom:8px}.client-tile>span{margin-top:0;font-size:13px}
 .page-intro:has(+.portfolio-section){padding-bottom:28px}.portfolio-section{padding-top:28px}.portfolio-toolbar{gap:14px;margin-bottom:22px}.portfolio-filters{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.portfolio-filters .filter-button{padding:10px 12px;min-height:44px;text-align:left;line-height:1.4}.portfolio-filters .filter-button:first-child{grid-column:1/-1}.portfolio-count{padding-top:0;margin:0}
 .process-diagram{margin-bottom:18px;padding:10px 12px}.process-diagram+.process-list{--bs-gutter-y:14px}.process-diagram+.process-list .process-step{padding:22px 24px}
 .intro-workproof-pair{max-width:430px;margin:auto;padding:12px 10px}.intro-workproof-pair img{aspect-ratio:1.05}.intro-workproof figcaption{margin-top:16px}
}
@media(max-width:991px){.page-intro-layout{gap:32px;grid-template-columns:1fr 1fr}.page-intro-visual img{height:280px}.page-intro-copy h1{font-size:2.2rem}}
@media(max-width:767px){.page-intro-layout{grid-template-columns:1fr;gap:28px}.page-intro-visual img{height:220px}.page-intro-visual.intro-portrait{max-width:250px;justify-self:center}.page-intro-visual.intro-portrait img{height:270px;object-position:center top}.page-intro-copy h1{font-size:2.1rem}.process-photo{height:210px}.inquiry-scene{height:160px;margin-top:22px}.project-card .project-preview{padding:25px 23px}}
@media(min-width:768px) and (max-width:991px){.page-intro-copy h1{font-size:1.75rem}}
@media(max-width:575px){.page-intro-copy h1,.inquiry-intro h1,.hero h1{font-size:clamp(1.5rem,7.4vw,2rem)}}
