/* Dahim — City & River / October 2026 */
:root{--ink:#102337;--blue:#145bcc;--line:#dee3e8;--muted:#617080;--max:1370px}
body{letter-spacing:-.025em;word-break:keep-all;overflow-wrap:normal}
h1,h2,h3,p,a,span{word-break:keep-all}a[href^="mailto:"]{overflow-wrap:anywhere}
.wrap{padding-inline:50px}.site-header{border-bottom:1px solid #e7ebef;backdrop-filter:blur(16px)}.header-inner{height:96px;gap:32px}.main-nav{gap:30px}.main-nav a{font-size:15px;font-weight:600;color:#23384b}.header-action{border-radius:0;background:var(--blue);min-height:44px;padding:0 24px;font-weight:600}.logo-crop{width:216px}.button{border-radius:0;font-weight:600}.eyebrow{font-weight:600;font-size:13px;letter-spacing:.15em}.renew-skip{position:fixed;left:20px;top:-90px;z-index:1000;background:white;color:#122637;padding:12px 22px}.renew-skip:focus{top:10px}
.home-renewal .site-header{position:absolute;width:100%;top:0;background:transparent;border-color:#ffffff35;backdrop-filter:none;color:#fff;transition:background .25s,border .25s}.home-renewal .site-header .brand img{filter:brightness(0) invert(1)}.home-renewal .main-nav a{color:#fff}.home-renewal .header-action{color:white;background:transparent;border:1px solid #ffffff80}.home-renewal .site-header.is-scrolled{position:fixed;background:#fffffff5;border-color:#e1e7ed;backdrop-filter:blur(16px)}.home-renewal .is-scrolled .brand img{filter:none}.home-renewal .is-scrolled .main-nav a{color:#23384b}.home-renewal .is-scrolled .header-action{background:var(--blue);border-color:var(--blue)}
.city-hero{height:max(760px,100svh);max-height:1150px;position:relative;isolation:isolate;color:white;background:#112d46;overflow:hidden}.city-poster,.city-video,.city-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}.city-video{z-index:-2}.city-shade{z-index:-1;background:linear-gradient(90deg,rgba(3,22,42,.56),rgba(3,22,42,.12) 80%),linear-gradient(0deg,rgba(4,22,39,.54),transparent 50%,rgba(4,22,39,.19))}.city-copy{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:100px;padding-bottom:130px}.city-kicker{font-size:13px;letter-spacing:.24em;margin:0 0 28px;color:#fff;font-weight:500}.city-copy h1{font-size:clamp(55px,6.7vw,102px);font-weight:400;letter-spacing:-.075em;line-height:1.25;margin:0}.city-copy h1 span{font-weight:650}.city-intro{font-size:clamp(18px,1.7vw,23px);font-weight:400;line-height:1.8;margin:25px 0 35px;color:#f4f7fb}.city-link{display:flex;align-items:center;gap:65px;border-bottom:1px solid #ffffff9c;padding:12px 0;font-size:15px;min-height:48px}.city-link span{font-size:24px;font-weight:300}.city-bottom{position:absolute;left:0;right:0;bottom:35px;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.14em}.scroll-link{display:flex;gap:20px;align-items:center}.scroll-link span{font-size:22px}.film-control{display:flex;align-items:center;gap:22px}.film-control button{border:1px solid #ffffff70;background:#102a4340;color:white;font-size:12px;letter-spacing:0;min-height:40px;min-width:90px;padding:6px 12px}.film-control button:hover{background:#ffffff25}
.practice-strip{background:#092b54;color:white}.practice-strip>.wrap{display:grid;grid-template-columns:repeat(4,1fr)}.practice-strip a{display:flex;align-items:center;justify-content:center;gap:20px;padding:28px 10px;border-left:1px solid #ffffff21;font-size:16px}.practice-strip a:last-child{border-right:1px solid #ffffff21}.practice-strip a:hover{background:#ffffff0c}.practice-strip small{font-size:11px;letter-spacing:.08em;color:#a6c0de}
.renew-section{padding-block:125px}.renew-kicker{color:var(--blue);font-size:12px;letter-spacing:.18em;font-weight:600;margin:0 0 24px}.renew-heading h2,.outsourcing-copy h2,.person-copy h2,.renew-contact h2{font-size:clamp(34px,3.8vw,56px);line-height:1.35;letter-spacing:-.065em;font-weight:500;color:var(--ink);margin:0}.renew-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;column-gap:40px;margin-bottom:60px}.renew-heading>.renew-kicker{grid-column:1/-1}.renew-heading>p:last-child{justify-self:end;color:var(--muted);font-size:17px;line-height:1.9;margin:0 0 5px}.practice-list{border-top:1px solid #16354c}.practice-row{display:grid;grid-template-columns:60px 1.05fr 1fr 46px;align-items:center;gap:25px;padding:34px 12px 34px 0;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}.practice-row:hover{background:#f5f8fd;padding-left:16px}.practice-no{font-size:14px;color:var(--blue);align-self:start;padding-top:3px}.practice-row small{font-size:10px;letter-spacing:.15em;color:#76899c}.practice-row h3{font-size:clamp(23px,2.2vw,31px);font-weight:500;letter-spacing:-.055em;color:var(--ink);margin:8px 0 0}.practice-row p{font-size:15px;line-height:1.85;color:var(--muted);margin:0}.round-arrow{width:44px;height:44px;display:grid;place-items:center;border:1px solid #b7c3cf;border-radius:50%;font-size:22px;color:var(--ink);transition:background .2s,color .2s}.practice-row:hover .round-arrow{background:var(--blue);color:white;border-color:var(--blue)}
.outsourcing-section{display:grid;grid-template-columns:1fr 1fr;background:#edf2f6}.outsourcing-image{min-height:650px;overflow:hidden}.outsourcing-image img{width:100%;height:100%;object-fit:cover}.outsourcing-copy{padding:90px clamp(35px,6vw,100px);align-self:center}.outsourcing-copy>p:not(.renew-kicker){color:var(--muted);font-size:17px;line-height:1.9;margin:26px 0}.outsourcing-copy ul{list-style:none;margin:0 0 38px;padding:0;color:#3c5267;font-size:15px}.outsourcing-copy li{padding:8px 0;border-bottom:1px solid #d8e0e7}.renew-link{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:13px 0;border-bottom:1px solid #8c9baa;font-size:15px;color:var(--ink);min-height:48px}.renew-link span{font-size:24px;font-weight:300}.renew-link:hover{color:var(--blue);border-color:var(--blue)}
.person-section{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:100px}.person-copy>p:not(.renew-kicker){font-size:16px;line-height:1.9;color:var(--muted);margin:24px 0}.person-copy>p.person-lead{font-size:19px;color:#304a61}.person-sign{display:flex;gap:20px;align-items:center;margin:36px 0 20px}.person-sign span{font-size:13px;color:#738295}.person-sign strong{font-size:26px;font-weight:500;letter-spacing:.12em;color:#17344e}.person-portrait{margin:0;position:relative;background:#e8edf3;max-height:590px;overflow:hidden}.person-portrait img{width:100%;height:590px;object-fit:cover;object-position:center 26%}.person-portrait figcaption{position:absolute;bottom:0;left:0;right:0;background:#092b54ed;color:#fff;font-size:10px;letter-spacing:.18em;text-align:center;padding:20px}
.renew-contact{background:#0d4389;color:#fff;padding:95px 0}.renew-contact>.wrap{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.renew-contact .renew-kicker{color:#b8d1f0}.renew-contact h2{color:white;font-size:clamp(32px,3.5vw,49px)}.contact-apply{display:inline-flex;gap:70px;align-items:center;border-bottom:1px solid #ffffff70;margin-top:28px;padding-bottom:10px;font-size:15px}.contact-apply span{font-size:24px}.contact-details{border-left:1px solid #ffffff35;padding-left:70px;display:flex;flex-direction:column;align-items:flex-start;font-size:16px}.contact-details .contact-phone{font-size:clamp(25px,2.5vw,36px);letter-spacing:-.02em;font-weight:400;margin-bottom:10px}.contact-details p{font-size:14px;color:#d2e2f7;line-height:1.9;margin:25px 0}.office-link{font-size:14px;display:flex;gap:25px;align-items:center}.office-link span{font-size:20px}
.site-footer{background:#071d33;padding:62px 0 28px}.footer-top p{color:#9cb0c3;line-height:1.9}.footer-links{gap:16px 24px;font-size:13px}.footer-bottom{font-size:11px;color:#8c9dae;margin-top:48px}.footer-logo{width:210px}
/* Shared inner pages */
.page-hero{background:#f0f4f8;color:var(--ink);border-bottom:1px solid var(--line)}.page-hero:after{display:none}.page-hero .wrap{min-height:315px;padding-top:70px;padding-bottom:65px}.page-hero .eyebrow{color:var(--blue)}.page-hero h1{font-weight:500;letter-spacing:-.06em}.page-hero p:last-child{color:var(--muted);font-size:17px}.section-head h2,.display-title,.about-copy h2,.service-detail h2{font-weight:500}.section-head{margin-bottom:50px}.service-detail{padding-block:62px}.service-tags span{border:0;background:#edf3f8;font-weight:500}.form-panel{box-shadow:none;border-color:#d7e0e8}.consult-note,.privacy-box{background:#f2f5f9}.contact-card{box-shadow:none;border-color:#dfe6ed}.contact-card .contact-icon{border-radius:50%}.about-photo{border-radius:0}.principles{background:#f2f5f8}.principle{border-top-width:1px}.contact-band{background:#edf3f9}.map-frame{filter:saturate(.7)}
[data-reveal]{opacity:1;transform:none}.motion-ready [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}
@media(min-width:1700px){.city-copy{padding-left:50px}.city-hero{max-height:1300px}}
@media(max-width:1100px){.header-inner{gap:20px}.main-nav{gap:20px}.logo-crop{width:185px}.wrap{padding-inline:35px}.person-section{gap:55px}.contact-details{padding-left:45px}.practice-row{grid-template-columns:35px 1fr 1fr 40px;gap:20px}.outsourcing-copy{padding:60px 40px}}
@media(max-width:900px){.header-inner{height:80px}.menu-toggle{display:flex;margin-left:auto}.header-action{display:none}.main-nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:20px 35px;box-shadow:0 20px 40px #092b5412}.site-header.nav-open .main-nav{display:grid;gap:0}.main-nav a{padding:13px 0;font-size:16px}.home-renewal .nav-open .main-nav a{color:var(--ink)}.home-renewal .menu-toggle{background:transparent;color:white;border-color:#ffffff70}.home-renewal .is-scrolled .menu-toggle{color:var(--ink);border-color:#cdd6de}.city-hero{height:88svh;min-height:670px}.practice-strip a{font-size:14px;gap:12px}.practice-strip small{display:none}.renew-section{padding-block:90px}.renew-heading h2,.outsourcing-copy h2,.person-copy h2{font-size:39px}.practice-row{grid-template-columns:30px 1fr 40px;gap:18px}.practice-row p{grid-column:2;grid-row:2;font-size:14px}.practice-row .round-arrow{grid-column:3;grid-row:1/3}.practice-row small{font-size:9px}.practice-row h3{font-size:28px}.outsourcing-section{grid-template-columns:1fr}.outsourcing-image{min-height:0;height:430px}.outsourcing-copy{padding:65px 35px;max-width:740px}.person-section{gap:45px;grid-template-columns:1fr 1fr}.person-portrait img{height:510px}.person-copy>p.person-lead{font-size:17px}.person-copy>p:not(.renew-kicker){font-size:15px}.renew-contact>.wrap{gap:35px}.contact-details{padding-left:35px}.footer-top{grid-template-columns:1fr}.footer-links{justify-content:flex-start}}
@media(max-width:600px){.wrap{padding-inline:24px}.header-inner{height:74px}.logo-crop{width:173px}.main-nav{top:74px;padding-inline:24px}.city-hero{height:90svh;min-height:650px;max-height:900px}.city-copy{padding-top:95px;padding-bottom:100px;justify-content:center}.city-kicker{font-size:10px;letter-spacing:.19em;margin-bottom:23px}.city-copy h1{font-size:clamp(42px,10.9vw,64px);line-height:1.35;letter-spacing:-.07em;white-space:normal}.city-copy h1 span{display:block}.city-intro{font-size:17px;margin-top:22px;margin-bottom:22px}.city-link{font-size:14px;gap:70px}.city-bottom{bottom:23px;gap:20px}.city-bottom .scroll-link{font-size:9px;letter-spacing:.1em;gap:12px}.film-control>span{display:none}.film-control button{font-size:11px;min-width:80px}.city-poster,.city-video{object-position:60% center}.city-shade{background:linear-gradient(90deg,#041d3680,#041d362e),linear-gradient(0deg,#051c3375,transparent 60%)}.practice-strip>.wrap{grid-template-columns:repeat(2,1fr);padding-inline:0}.practice-strip a{font-size:13px;padding:20px 8px;border-bottom:1px solid #ffffff21}.practice-strip small{display:inline;font-size:10px}.renew-section{padding-block:72px}.renew-heading{grid-template-columns:1fr;gap:0;margin-bottom:35px}.renew-kicker{font-size:10px;margin-bottom:19px}.renew-heading h2,.outsourcing-copy h2,.person-copy h2{font-size:34px}.renew-heading>p:last-child{justify-self:start;font-size:15px;margin-top:22px}.practice-row{padding-block:26px;gap:8px 14px;grid-template-columns:25px 1fr 36px}.practice-row h3{font-size:24px;margin-top:6px}.practice-row p{font-size:13px}.practice-row p br{display:none}.round-arrow{width:36px;height:36px;font-size:19px}.outsourcing-image{height:300px}.outsourcing-copy{padding:50px 24px 60px}.outsourcing-copy>p:not(.renew-kicker){font-size:16px}.person-section{grid-template-columns:1fr;gap:40px}.person-portrait{max-width:500px}.person-portrait img{height:480px}.person-copy>p.person-lead{font-size:18px}.person-copy>p:not(.renew-kicker){font-size:16px}.person-sign{margin-top:28px}.renew-contact{padding:65px 0}.renew-contact>.wrap{grid-template-columns:1fr;gap:40px}.contact-details{border-left:0;border-top:1px solid #ffffff35;padding:30px 0 0}.contact-details .contact-phone{font-size:31px}.site-footer{padding-top:45px}.footer-logo{width:190px}.footer-top{gap:28px}.footer-top p{font-size:12px}.footer-links{font-size:12px;gap:14px 20px}.footer-bottom{margin-top:30px;font-size:10px}.page-hero .wrap{min-height:260px;padding-block:50px}.page-hero h1{font-size:42px}.page-hero p:last-child{font-size:15px}.section{padding-block:65px}.service-detail{padding-block:38px}.form-panel{padding:25px 18px}}
@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal]{opacity:1;transform:none;transition:none}.city-video{display:none}.city-video.user-playing{display:block}}

.main-nav .mobile-consult{display:none}@media(max-width:900px){.main-nav .mobile-consult{display:block;color:var(--blue);font-weight:700}}
