/* Dahim / photographic editorial system */
.photographic-site{--surface:#f4f5f7;--deep:#102d50;--soft-shadow:0 18px 50px #17345110;--round:10px;background:#fff}
.photographic-site h1,.photographic-site h2,.photographic-site h3,.photographic-site p{word-break:keep-all;overflow-wrap:break-word}
.photo-frame{position:relative;margin:0;min-width:0;border:0;border-radius:var(--round);overflow:hidden;background:#e8edf2;box-shadow:var(--soft-shadow)}
.photo-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1);filter:saturate(.8)}
.photo-frame figcaption{position:absolute;inset:auto 0 0;padding:42px 24px 20px;background:linear-gradient(transparent,#08233fe6);color:#fff;font-size:16px;line-height:1.6;text-align:left;letter-spacing:0}
.photo-frame .image-caption-small{font-size:11px;opacity:.7;display:block;margin-top:4px}
/* Strong central axes for every introduction. */
.page-hero{text-align:center;padding:46px 0 38px;background:linear-gradient(180deg,#f0f4f8,#fff);border:0}
.page-hero .wrap>p:last-child{margin-inline:auto;max-width:650px}.page-hero h1{font-size:46px;font-weight:570;letter-spacing:-.055em}.page-hero .eyebrow{margin-bottom:14px}
.detail-hero{padding:43px 0 36px;background:linear-gradient(180deg,#f0f4f8,#fff);border:0}
.detail-hero-grid{display:flex;flex-direction:column;gap:28px;text-align:center}
.detail-hero-grid>div:first-child{max-width:800px;margin:auto}.detail-hero h1{font-size:16px;font-weight:550;margin-bottom:14px}
.detail-lead{font-size:46px;line-height:1.25;font-weight:570;letter-spacing:-.055em}.detail-intro{font-size:16px;line-height:1.8;margin:18px auto 22px;max-width:650px}
.detail-hero-grid>.photo-frame{width:100%;max-width:1080px;height:390px;border-radius:10px;box-shadow:0 22px 55px #1b30471a}.detail-hero-grid>.photo-frame img{height:100%;object-position:center 52%}
.detail-tabs{justify-content:center;border:0;gap:7px;padding-block:12px 22px;flex-wrap:wrap}.detail-tabs a{background:#f1f4f8;border:0;border-radius:25px;padding:10px 22px;font-size:13px}
.detail-heading,.section-head,.rd-heading{display:block;text-align:center;max-width:850px;margin:0 auto 30px}.detail-heading p,.section-head>p,.rd-heading>p{margin:12px auto 0;max-width:650px}.detail-heading h2,.section-head h2,.rd-heading h2{font-size:34px;font-weight:570;line-height:1.4;letter-spacing:-.045em}.detail-kicker,.rd-kicker,.section-head .eyebrow{margin-bottom:12px!important}.detail-section{padding-block:45px}
/* The home is photographic, not a diagram catalogue. */
.city-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:90px;padding-bottom:65px;min-height:100%}.city-copy h1{font-size:clamp(66px,7.5vw,104px);font-weight:430;letter-spacing:-.06em}.city-copy h1 span{font-weight:560}.city-intro{font-size:17px;line-height:1.8;margin-block:21px}.city-shade{background:linear-gradient(180deg,#06172b42,#071b3459 45%,#071b3499)}.city-video,.city-poster{object-position:50% 45%}.city-hero{height:82svh;min-height:630px}.city-bottom{bottom:25px}
.editorial-services{display:block;padding-block:54px}.editorial-heading{position:static;text-align:center;margin:0 auto 30px;max-width:760px}.editorial-heading>p{margin-bottom:15px}.editorial-heading h2{font-size:38px;font-weight:560;line-height:1.35;margin-bottom:15px}.editorial-heading>span{max-width:none;font-size:14px}.photo-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.photo-service{min-width:0;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 12px 40px #14375610;display:block;transition:box-shadow .35s,transform .35s}.photo-service .photo-frame{height:225px;border-radius:0;box-shadow:none}.photo-service-copy{padding:25px 20px 24px;text-align:center}.photo-service-copy small{font-size:11px;color:#6e8195}.photo-service-copy h3{font-size:24px;font-weight:580;margin:11px 0 12px;letter-spacing:-.04em}.photo-service-copy p{color:#62758a;font-size:14px;line-height:1.9;margin:0}.photo-service-copy>span{display:block;color:#235ba1;font-size:12px;margin-top:19px}.photo-service-copy b{font-size:16px;font-weight:400;margin-left:5px}.photo-service:hover{box-shadow:0 22px 55px #14375621}.motion-on .photo-service:hover .photo-frame img{transform:scale(1.035)}
.working-section{padding-block:45px;background:#102e50}.working-grid{display:flex;flex-direction:column;gap:30px;text-align:center}.editorial-intro{max-width:720px}.editorial-intro h2{font-size:40px;font-weight:540}.editorial-intro>p:not(.section-caption){font-size:16px;margin:17px 0}.working-ledger{border:0;width:100%;max-width:1010px}.working-ledger .photo-frame{height:365px;box-shadow:0 20px 45px #0003}.editorial-intro .ledger-note{font-size:11px!important;margin:17px 0 0!important;color:#98b0c8!important}
.centered-portrait{display:flex;flex-direction:column;align-items:center;text-align:center;gap:28px;padding-block:48px}.signature-photo,.about-main .about-photo{width:310px;max-width:100%;box-shadow:0 16px 45px #1e344c16;border-radius:8px;overflow:hidden}.signature-photo img{height:350px;object-position:center 20%}.about-main .about-photo img{height:385px;object-fit:cover;object-position:center 20%}.signature-photo>span{font-size:11px;text-align:center;background:#163858d9}.signature-copy,.about-copy{max-width:710px;margin:auto}.signature-copy h2{font-size:35px;margin:0 0 16px}.signature-copy .signature-lead{font-size:27px}.signature-copy>p:not(.section-caption):not(.signature-lead){font-size:15px}.about-copy .small-rule{display:none}.about-copy h2{font-size:36px}.about-copy>p{font-size:16px;line-height:1.9}.about-signature{justify-content:center}.home-office>.wrap{display:flex;flex-direction:column;gap:24px;text-align:center}.home-office h2 br{display:none}.home-office h2{font-size:38px}.home-office-contact{align-items:center}.home-office-contact>div{justify-content:center}.home-office{padding-block:38px;background:#f2f4f7;border:0}
/* Service pages: real work photos, full surfaces and quiet material depth. */
.photo-service-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.photo-service-gallery .service-detail{display:flex;flex-direction:column;gap:0;padding:0;border:0;background:#fff;border-radius:10px;box-shadow:var(--soft-shadow);overflow:hidden}.photo-service-gallery .photo-frame{width:100%;height:275px;border-radius:0;box-shadow:none}.service-story{padding:28px 30px 30px;text-align:center}.service-story .service-index{display:block;margin-bottom:14px;font-size:10px;color:#6a829c;letter-spacing:.05em}.service-detail h2{font-size:29px;font-weight:560}.service-detail p{max-width:470px;margin:auto;font-size:15px;line-height:1.85}.service-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}.service-tags span{margin:0;padding:5px 9px;background:#f1f5fa;border:0;font-size:11px;border-radius:4px}.service-story .button{font-size:13px;min-height:42px}.other-services{grid-column:1/-1;text-align:center;margin:0;background:#f0f4f8;border:0;padding:25px;border-radius:8px}.other-services h3{font-size:21px}.other-services p{font-size:14px}
.detail-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border:0}.detail-card{display:flex;flex-direction:column;gap:0;padding:29px 26px;background:#fff;box-shadow:var(--soft-shadow);border:1px solid #ecf0f5;border-radius:10px;min-width:0;text-align:center}.detail-card .detail-number{font-size:13px;color:#3679c7;background:#edf4fc;border-radius:50%;width:38px;height:38px;line-height:38px;align-self:center;display:block;margin-bottom:18px}.detail-card h3{font-size:25px;font-weight:570;margin:0 0 13px;line-height:1.4}.detail-card>p{font-size:14px;margin:0 0 22px;color:#6c7f92;line-height:1.75}.detail-card ul{display:block;margin:0 0 20px;padding:0;text-align:left;border:0}.detail-card li{padding:8px 0 8px 16px;font-size:14px;line-height:1.65;position:relative}.detail-card li:before{content:'';position:absolute;left:0;top:18px;width:5px;height:5px;border-radius:50%;background:#7fa5d3}.detail-card>a{margin-top:auto;align-self:center;padding-top:6px}.detail-note{text-align:center;font-size:12px}.detail-report{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;max-width:1080px}.detail-report>.photo-frame{grid-column:1/-1;height:310px;margin-bottom:0}.detail-report>div{padding-left:20px;text-align:left}.detail-report h2{font-size:32px}.detail-deliverables{border:0;box-shadow:0 12px 35px #1536530b;border-radius:8px;padding:12px 25px;background:#fff}.detail-deliverables>div{padding:17px 0}.detail-steps,.rd-process,.flow-grid{gap:20px}.detail-steps>li,.rd-process>li,.flow-step{padding:24px 20px;text-align:center;border:0;background:linear-gradient(140deg,#f5f8fc,#eaf0f7);border-radius:8px;box-shadow:0 8px 25px #15365308}.detail-steps>li>span,.rd-process>li>span,.flow-step>span{font-size:12px;letter-spacing:.03em;color:#6087b4}.detail-steps h3,.rd-process h3,.flow-step h3{font-size:21px;font-weight:550;margin-top:13px}.detail-steps p,.rd-process p,.flow-step p{font-size:14px;line-height:1.8}.detail-faq{max-width:880px;margin:35px auto 0}.flow-section{text-align:center}.flow-section .display-title{font-size:34px}
.consulting-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.consulting-catalog>.detail-heading,.consulting-catalog>.detail-note{grid-column:1/-1}.consulting-row{display:flex;flex-direction:column;gap:22px;padding:30px;background:#fff;border:1px solid #e7edf4;box-shadow:var(--soft-shadow);border-radius:10px;text-align:center}.consulting-row:before{display:none}.consulting-row:last-of-type{grid-column:1/-1;width:calc(50% - 12px);justify-self:center}.consulting-title h3{font-size:26px;font-weight:560}.consulting-title p{font-size:14px;margin:12px auto 0;max-width:330px}.consulting-title .detail-number{font-size:12px;color:#8aa6c5}.consulting-scope{text-align:left;font-size:14px;line-height:1.8}.consulting-prep{text-align:left;border:0;border-radius:5px;padding:14px 17px;background:#f0f4fa;font-size:12px}.consulting-row .detail-text-link{font-size:12px}
/* Bookkeeping retains the agreed content order and packages. */
.rd-hero{padding-top:42px;background:linear-gradient(#eff4fa,#fff)}.rd-hero-grid{display:flex;flex-direction:column;gap:29px;text-align:center}.rd-hero-grid>div:first-child{max-width:750px}.rd-hero h1{font-size:48px;font-weight:570;letter-spacing:-.055em}.rd-hero-lead{font-size:18px;font-weight:450}.rd-hero-description{font-size:16px}.rd-actions{justify-content:center}.rd-hero-grid>.photo-frame{width:100%;height:380px;max-width:1080px}.rd-summary{max-width:1060px!important;text-align:center;border:0;margin:20px auto 0!important}.rd-summary>div+div{border-left:0}.rd-summary p{font-size:13px}.rd-section{padding-block:45px}.rd-cost-layout{max-width:1080px;gap:40px}.rd-cost-layout .photo-frame{height:410px}.rd-cost-copy h2{font-size:33px;font-weight:580}.rd-compare{max-width:1050px;margin:auto}.rd-compare article{border:0;border-radius:10px;box-shadow:var(--soft-shadow);background:#f5f7fa}.rd-compare .rd-with{box-shadow:0 15px 40px #2f64a31a;background:linear-gradient(135deg,#e6f0fd,#f3f7fd);border:0}.rd-service{border:0;border-radius:10px;box-shadow:var(--soft-shadow)}.rd-service .service-photo{height:205px;border-radius:0;box-shadow:none}.rd-service-body{text-align:center;padding:25px}.rd-service-body>p{min-height:0;font-size:15px}.rd-service ul{text-align:left}.rd-service-note{border:0;border-radius:8px;text-align:center}.rd-service-note>strong{font-size:16px}.rd-team-layout{display:flex;flex-direction:column;text-align:center;gap:25px}.rd-team-layout>div>p{margin-inline:auto}.rd-flow{justify-content:center}.rd-person{width:370px;max-width:100%;text-align:left}.rd-end>.wrap,.detail-contact>.wrap,.contact-band>.wrap{display:flex;flex-direction:column;gap:22px;text-align:center}.rd-end-actions{max-width:340px}.contact-band h2,.detail-contact h2{font-size:34px}.rd-end h2{font-size:31px}.rd-faq-layout .rd-heading{text-align:left}.rd-plans-section .rd-heading{max-width:850px}
/* About, office and intake share a calm centered layout. */
.principles{padding-block:45px;background:#f3f6fa;border:0}.principle-grid{gap:24px}.principle{text-align:center;padding:28px 24px;border:0;border-radius:9px;background:#fff;box-shadow:var(--soft-shadow)}.principle h3{font-size:21px;font-weight:570;margin-block:15px 12px}.principle p{font-size:14px;line-height:1.85}.principle>span{font-size:11px;color:#7c9ab9}
.office-grid{display:flex;flex-direction:column;gap:32px}.office-address{text-align:center;max-width:720px}.office-address .street{font-size:29px;line-height:1.5}.office-data{max-width:600px;margin:24px auto;display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;text-align:left}.map-actions{justify-content:center}.map-block{width:100%;max-width:1080px;overflow:hidden;border-radius:9px;border:0;box-shadow:var(--soft-shadow)}.map-frame{height:410px}.map-caption{text-align:center;font-size:12px}.contact-grid{gap:20px}.contact-card{text-align:center;align-items:center;border:0;border-radius:9px;box-shadow:var(--soft-shadow);background:#fff}.contact-card .contact-icon{margin-inline:auto}.contact-card>span{font-size:13px}.contact-section{background:#f4f6f9}
.consult-layout{display:flex;flex-direction:column;align-items:center;gap:30px;max-width:960px}.consult-side{text-align:center;position:static;width:100%;max-width:800px}.consult-side h2{font-size:31px}.consult-side>p{max-width:650px;margin-inline:auto}.consult-note{border:0;background:#f1f5fa;border-radius:8px;padding:22px;margin-top:22px}.consult-note>strong{display:block;font-size:14px}.intake-journey{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:20px 0}.intake-journey li{display:flex;flex-direction:column;align-items:center;gap:10px}.intake-journey li>span{display:block;width:30px;height:30px;line-height:30px;background:#dce8f7;color:#4779b3;border-radius:50%;font-size:10px}.intake-journey b{font-size:14px;font-weight:550;display:block}.intake-journey small{display:block;font-size:11px;color:#7a8da1;margin-top:4px}.journey-call{font-size:12px;color:#527298}.journey-call span{margin-left:12px}.form-panel{width:100%;border-radius:10px;box-shadow:0 15px 50px #1e416314;border:1px solid #e8edf4;padding:32px}.form-panel label,.form-panel legend{text-align:left}.submit-row{justify-content:center}
.footer-top{display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px}.footer-links{justify-content:center}.footer-logo{margin:auto}.footer-bottom{justify-content:center;gap:25px;text-align:center}.effects-preference{text-align:center}
/* Motion: perceptible and restrained. */
html.motion-on .motion-ready{opacity:0;transform:translate3d(0,30px,0);transition:opacity .85s ease var(--motion-delay,0ms),transform 1.05s cubic-bezier(.19,1,.22,1) var(--motion-delay,0ms)}html.motion-on .motion-ready.motion-visible{opacity:1;transform:translate3d(0,0,0)}html.motion-off .motion-ready{opacity:1;transform:none;transition:none}
@media(max-width:1000px){.detail-lead{font-size:39px}.photo-services{gap:16px}.photo-service .photo-frame{height:195px}.photo-service-copy{padding:23px 14px}.photo-service-copy h3{font-size:21px}.detail-card{padding:25px 20px}.detail-card h3{font-size:22px}.detail-card li{font-size:13px}.rd-service-body{padding:22px 19px}.rd-hero h1{font-size:43px}.contact-grid{grid-template-columns:1fr 1fr}.rd-cost-layout{gap:28px}.rd-cost-copy h2{font-size:29px}}
@media(max-width:820px){.rd-service{display:block}.rd-service .service-photo{height:230px}.rd-service-body{padding:25px}.rd-services{grid-template-columns:1fr}.rd-cost-layout{grid-template-columns:1fr 1fr}.rd-hero-grid>.photo-frame{height:340px}}
@media(max-width:700px){.page-hero{padding:32px 0 25px}.page-hero h1{font-size:34px}.page-hero .wrap>p:last-child{font-size:14px;line-height:1.8}.detail-hero{padding:30px 0 24px}.detail-lead{font-size:34px}.detail-intro{font-size:14px;margin:15px auto 18px}.detail-hero-grid{gap:24px}.detail-hero-grid>.photo-frame{height:245px;border-radius:7px;box-shadow:0 14px 30px #193a5514}.detail-hero-grid>.photo-frame img{height:100%}.detail-tabs{gap:7px;padding:6px 20px 19px}.detail-tabs a{padding:8px 13px;font-size:11px}.detail-section{padding-block:32px}.detail-heading h2,.section-head h2,.rd-heading h2{font-size:27px}.detail-heading,.section-head,.rd-heading{margin-bottom:24px}.detail-heading p,.section-head>p,.rd-heading>p{font-size:14px}.city-hero{height:82svh;min-height:610px}.city-copy{padding:100px 25px 90px}.city-copy h1{font-size:66px}.city-intro{font-size:15px}.city-bottom{bottom:21px}.city-bottom .film-control>span{display:none}.editorial-services{padding-block:34px}.editorial-heading h2{font-size:31px}.editorial-heading>span{font-size:13px}.photo-services{grid-template-columns:1fr;gap:23px;max-width:460px;margin:auto}.photo-service .photo-frame{height:230px}.photo-service-copy{padding:23px}.photo-service-copy h3{font-size:25px}.photo-service-copy p{font-size:15px}.photo-frame figcaption{padding:30px 20px 17px;font-size:15px}.working-section{padding-block:34px}.editorial-intro h2{font-size:33px}.editorial-intro>p:not(.section-caption){font-size:15px}.working-ledger .photo-frame{height:250px}.centered-portrait{gap:24px;padding-block:35px}.signature-photo,.about-main .about-photo{width:280px}.signature-photo img{height:330px}.about-main .about-photo img{height:355px}.signature-copy h2{font-size:32px}.signature-copy .signature-lead{font-size:25px}.signature-copy>p:not(.section-caption):not(.signature-lead){font-size:14px}.about-copy h2{font-size:29px}.about-copy>p{font-size:15px}.home-office h2{font-size:31px}.home-office-contact{font-size:14px}.photo-service-gallery{grid-template-columns:1fr;gap:25px}.photo-service-gallery .photo-frame{height:235px}.service-story{padding:25px 23px}.service-detail h2{font-size:27px}.service-detail p{font-size:15px}.other-services{padding:24px}.other-services h3{font-size:20px}.detail-cards{grid-template-columns:1fr;gap:20px}.detail-card{padding:26px}.detail-card h3{font-size:25px}.detail-card li{font-size:14px}.detail-card .detail-number{margin-bottom:14px}.detail-report{grid-template-columns:1fr;gap:23px}.detail-report>.photo-frame{grid-column:auto;height:230px}.detail-report>div{text-align:center;padding:0}.detail-report h2{font-size:28px}.detail-report>div>p{font-size:15px}.detail-deliverables{padding:8px 20px}.detail-steps,.rd-process{grid-template-columns:1fr 1fr;gap:14px}.detail-steps>li,.rd-process>li{padding:21px 15px}.detail-steps h3,.rd-process h3{font-size:19px}.detail-steps p,.rd-process p{font-size:13px}.flow-section .display-title{font-size:28px}.flow-grid{grid-template-columns:1fr;gap:17px}.consulting-catalog{grid-template-columns:1fr;gap:20px}.consulting-row{padding:26px 23px;gap:18px}.consulting-row:last-of-type{grid-column:auto;width:100%}.consulting-title h3{font-size:25px}.consulting-scope{font-size:14px}.rd-hero{padding-top:30px}.rd-hero h1{font-size:36px}.rd-hero-lead{font-size:16px}.rd-hero-description{font-size:14px}.rd-hero-grid>.photo-frame{height:245px}.rd-summary{margin-top:13px!important}.rd-summary>div{display:block;border:0!important;padding:13px 0}.rd-summary strong{font-size:15px}.rd-summary p{font-size:12px}.rd-section{padding-block:33px}.rd-cost-layout{grid-template-columns:1fr;gap:26px}.rd-cost-layout .photo-frame{height:245px}.rd-cost-copy{text-align:center}.rd-cost-copy h2{font-size:29px}.rd-cost-list{text-align:left}.rd-compare{grid-template-columns:1fr;gap:18px}.rd-service .service-photo{height:225px}.rd-service-body{padding:24px}.rd-service-body>p{font-size:15px}.rd-service-note{display:block;padding:22px}.rd-service-note>p{margin-top:8px}.rd-team h2{font-size:27px}.rd-person{width:340px}.contact-band h2,.detail-contact h2,.rd-end h2{font-size:28px}.principle-grid{grid-template-columns:1fr;gap:18px}.principle{padding:27px}.principle h3{font-size:23px}.principle p{font-size:15px}.office-address .street{font-size:25px}.office-data{grid-template-columns:1fr;max-width:360px;gap:0}.map-frame{height:320px}.contact-grid{grid-template-columns:1fr 1fr;gap:13px}.contact-card{padding:22px 12px;min-width:0}.contact-card>span{font-size:11px;overflow-wrap:anywhere}.contact-card strong{font-size:18px}.consult-layout{gap:24px}.consult-side h2{font-size:27px}.consult-side>p{font-size:14px}.consult-note{padding:20px 13px}.intake-journey{gap:10px}.intake-journey b{font-size:12px}.intake-journey small{font-size:10px}.journey-call{font-size:11px}.journey-call span{margin-left:5px}.form-panel{padding:24px 20px}.footer-top{gap:20px}.footer-links{gap:13px;font-size:12px}.footer-bottom{display:flex;flex-direction:column;gap:8px}.footer-bottom span{margin:0}.effects-preference{padding-top:15px}html.motion-on .motion-ready{transform:translate3d(0,23px,0)}html.motion-on .motion-ready.motion-visible{transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){html:not(.motion-on) .motion-ready{opacity:1;transform:none;transition:none}html.motion-on .motion-ready{transition:opacity .85s ease var(--motion-delay,0ms),transform 1.05s cubic-bezier(.19,1,.22,1) var(--motion-delay,0ms)!important}}
@media print{.motion-ready{opacity:1!important;transform:none!important}.photo-frame{box-shadow:none}}
.photo-frame figcaption{text-align:center;font-size:17px;font-weight:500;letter-spacing:-.02em}.photo-frame img[src*="work-consulting"]{object-position:center 49%}.stock-credit{font-size:10px;line-height:1.7;color:#a0b2c5;margin:16px 0 0}.photo-service .photo-frame img{filter:saturate(.65)}
@media(max-width:700px){.photo-frame figcaption{font-size:14px;padding-inline:18px}.stock-credit{font-size:9px;max-width:300px;margin:15px auto 0}}
.city-poster img{width:100%;height:100%;object-fit:cover;object-position:center}.city-shade{background:linear-gradient(180deg,#071c3440,#071c345c 50%,#071c348c)}.city-video{object-position:center}.city-copy h1{text-shadow:0 3px 22px #0e2d4b28}
